Csharp/C Sharp by API/System.Windows.Forms/UserControl

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

extends UserControl

<source lang="csharp">

   using System;
   using System.Drawing;
   using System.Collections;
   using System.ruponentModel;
   using System.Windows.Forms;
   using System.Data;
 public class UserControlForm : System.Windows.Forms.Form
 {
   private UserControlExample userControlExample1;
   private System.ruponentModel.Container components = null;
   public UserControlForm()
   {
     InitializeComponent();
   }
   protected override void Dispose( bool disposing )
   {
     if( disposing )
     {
       if (components != null) 
       {
         components.Dispose();
       }
     }
     base.Dispose( disposing );
   }
   private void InitializeComponent()
   {
     this.userControlExample1 = new UserControlExample();
     this.SuspendLayout();
     this.userControlExample1.Current = 5;
     this.userControlExample1.Location = new System.Drawing.Point(98, 113);
     this.userControlExample1.Max = 10;
     this.userControlExample1.Min = 0;
     this.userControlExample1.Name = "userControlExample1";
     this.userControlExample1.Size = new System.Drawing.Size(96, 40);
     this.userControlExample1.TabIndex = 0;
     // 
     // UserControlForm
     // 
     this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
     this.ClientSize = new System.Drawing.Size(292, 266);
     this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                     this.userControlExample1});
     this.Name = "UserControlForm";
     this.Text = "UserControlForm";
     this.ResumeLayout(false);
   }
   
   static void Main() 
   {
     Application.Run(new UserControlForm());
   }
 }
 public class UserControlExample : System.Windows.Forms.UserControl
 {
   private System.Windows.Forms.TextBox textBox1;
   private System.Windows.Forms.VScrollBar vScrollBar1;
   private System.ruponentModel.Container components = null;
   public UserControlExample()
   {
     InitializeComponent();
   }
   protected override void Dispose( bool disposing )
   {
     if( disposing )
     {
       if( components != null )
         components.Dispose();
     }
     base.Dispose( disposing );
   }
   private void InitializeComponent()
   {
     this.textBox1 = new System.Windows.Forms.TextBox();
     this.vScrollBar1 = new System.Windows.Forms.VScrollBar();
     this.SuspendLayout();
     this.textBox1.Location = new System.Drawing.Point(8, 8);
     this.textBox1.Name = "textBox1";
     this.textBox1.ReadOnly = true;
     this.textBox1.Size = new System.Drawing.Size(48, 20);
     this.textBox1.TabIndex = 0;
     this.textBox1.Text = "";
     this.textBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
     this.vScrollBar1.Location = new System.Drawing.Point(64, 8);
     this.vScrollBar1.Name = "vScrollBar1";
     this.vScrollBar1.Size = new System.Drawing.Size(17, 24);
     this.vScrollBar1.TabIndex = 1;
     this.vScrollBar1.Scroll += new System.Windows.Forms.ScrollEventHandler(this.vScrollBar1_Scroll);
     this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                     this.vScrollBar1,
                                     this.textBox1});
     this.Name = "UserControlExample";
     this.Size = new System.Drawing.Size(96, 40);
     this.ResumeLayout(false);
   }
   private int m_min = int.MinValue;
   private int m_max = int.MaxValue;
   private int m_current = 0;
   private void vScrollBar1_Scroll(object sender, System.Windows.Forms.ScrollEventArgs e)
   {
     if ( e.Type == ScrollEventType.SmallIncrement )
     {
       try
       {
         Current -= 1;
       }
       catch
       {
       }
     }
     else
     {
       if ( e.Type == ScrollEventType.SmallDecrement )
       {
         try
         {
           Current += 1;
         }
         catch
         {
         }
       }
     }
     vScrollBar1.Value = 50;
   }
   public int Min
   {
     get
     {
       return m_min;
     }
     set
     {
       m_min = value;
     }
   }
   public int Max
   {
     get
     {
       return m_max;
     }
     set
     {
       m_max = value;
     }
   }
   public int Current
   {
     get
     {
       return m_current;
     }
     set
     {
       if ( ( value > m_max ) || ( value < m_min ) )
       {
         throw new ArgumentOutOfRangeException( "Current" );
       }
       m_current = value;
       textBox1.Text = m_current.ToString();
     }
   }
 }
  
   
 </source>