程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 用Visual C#做WinForm組件(2)

用Visual C#做WinForm組件(2)

編輯:關於C語言

四. 自定義組件的源程序代碼( control.cs ):

control.cs源代碼如下:
using System.Windows.Forms ;
//定義封裝此組件的名稱空間
namespace MyControls
{
 //LabledTextBox組件是繼承了 UserControl組件的
 public class LabeledTextBox : UserControl
 {
  //定義本組件的組成結構
  private Label myLabel ;
  private TextBox myTextBox ;
  public LabeledTextBox ( )
  {
   InitializeComponent ( ) ;
  }
  public void InitializeComponent ( )
  {
   //定義一個標簽
   myLabel = new Label ( ) ;
   myLabel.Location = new System.Drawing.Point ( 0 , 0 ) ;
   myLabel.Size = new System.Drawing.Size ( 100 , 20 ) ;
   //定義一個文本框
   myTextBox = new TextBox ( ) ;
   myTextBox.Location = new System.Drawing.Point ( 105 , 0 ) ;
   myTextBox.Size =new System.Drawing.Size ( 100 , 20 ) ;
   //同樣要設定所希望的組件大小
   this.Size =new System.Drawing.Size ( 205 , 20 ) ;
   //加入組件
   this.Controls.Add ( myLabel ) ;
   this.Controls.Add ( myTextBox ) ;
  }
  //組件中的Text屬性,是從文本框的Text的屬性派生而來
  public override string Text
  {
   get
   {
    return myTextBox.Text ;
   }
   set
   {
    myTextBox.Text = value ;
   }
  }
  //創建一個新的屬性LabelText,並且此屬性的值是通過繼承此組件中的標簽的  Text屬性值
  public string LabelText
  {
   get
   {
    return myLabel.Text ;
   }
   set
   {
    myLabel.Text = value ;
   }
  }
 }
}

至此,我們已經完成了一個新的組件的構建過程。下面我們將編譯源程序文件,生產組件.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved