成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C#定義動態控件數組剖析

開發 后端
這里介紹C#定義動態控件數組,DotNet里支持動態的控件數組,所以我們可以把已設計好的控件,附給動態的數組,這樣就可以任意的使用了。

本文向大家介紹C#定義動態控件數組,可能好多人還不知道動態控件數組,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

DotNet里取消了控件數組,這讓習慣了使用VB控件的程序員非常不適應。有什么辦法能夠實現控件數組的功能嗎?答案是肯定的。

眾所周知,控件數組最主要的兩個優點:可以循環附值;可以響應同一個事件。從而大大簡化了代碼。下面根據這兩個方面,舉一個例子。

新建一個工程,在窗體上添加5個textbox(textBox1...textBox5)和2個button (button1、button2)。

一.循環附值

總的來說,有兩種實現方法:

1.C#定義動態控件數組,DotNet里支持動態的控件數組,所以我們可以把已設計好的控件,附給動態的數組,這樣就可以任意的使用了。代碼如下:

  1. private void button1_Click(object sender, System.EventArgs e)  
  2.  
  3. {  
  4. TextBox[] myTextBox = new TextBox[5];  
  5. myTextBox[0] = textBox1;  
  6. myTextBox[1] = textBox2;  
  7. myTextBox[2] = textBox3;  
  8. myTextBox[3] = textBox4;  
  9. myTextBox[4] = textBox5;  
  10.  
  11. for ( int i=0;i< 5;i++)  
  12. {  
  13. myTextBox[i].Text = "fill_1";  
  14. }  

2.利用窗體的控件數組。因為窗體里的控件,都被包括在Control里面,所以可以根據其類別加以區分。代碼如下:

  1. private void button2_Click(object sender, System.EventArgs e)  
  2. {  
  3. foreach(Control myControls in this.Controls)  
  4. {  
  5. if (myControls.ToString().IndexOf("TextBox") > 0 )  
  6. {  
  7. myControls.Text ="fill_2";  
  8. }  
  9.  
  10. }  

二.事件響應

讓數組里的控件都響應同一個相應的事件,通過起在數組里唯一的標識,再將他們加以區分。下面一個例子,使5個textBox響應同一個keypress事件。

自定義一個控件事件-- textBox_KeyPress ,代碼如下:

  1. private void textBox_KeyPress(object sender, 
    System.Windows.Forms.KeyPressEventArgs e)  
  2. {  
  3. TextBox box = (TextBox)sender;  
  4.  
  5. MessageBox.Show(this,"you choose " + box.Name + " 
    and you keypress " + e.KeyChar.ToString() ,"try" ,MessageBoxButtons.OK );  

選定textBox1,按F4顯示其屬性頁,選擇"Events"按鈕(就是那個小閃電),列出了textBox1的所有事件,在keypress里寫我們想讓他相應的事件的名字--textBox_KeyPress,這樣,當textBox1產生keypress事件時,他相應的是 textBox_KeyPress這個我們自定義的事件。同樣,對其它的textBox控件也做如上的屬性設置。這樣,5個textBox同時響應一個 keypress事件,而可以通過object sender的不同,可以加以區分。這樣就達到了C#定義動態控件數組的效果。

【編輯推薦】

  1. C# this關鍵字詳解
  2. C#調用析構方法詳解
  3. C#釋放托管資源簡單描述
  4. C#單路代理簡單分析
  5. C#文法產生式概述
責任編輯:佚名 來源: 博客園
相關推薦

2009-09-27 10:46:30

C#控件數組

2009-08-07 13:03:10

C#控件數組

2010-01-12 15:54:47

VB.NET動態控件數

2009-07-15 18:25:52

ASP.NET控件數組

2009-08-27 16:29:18

C#動態編譯

2009-08-28 10:44:46

C#字符數組轉換

2009-09-18 10:00:17

C#數組操作

2009-09-17 17:40:36

C#動態數組

2009-09-17 17:44:51

C#動態數組

2009-09-17 18:14:05

C#動態數組

2009-09-02 10:58:02

C#動態數組

2009-08-07 13:39:13

C#定義整型數組

2009-09-17 18:07:22

C#動態數組

2009-09-02 11:02:57

C#動態數組

2009-09-01 18:32:32

C#動態數組

2009-10-22 13:09:19

VB.NET動態控件數

2009-08-03 13:34:06

自定義C#控件

2009-08-03 13:39:46

C#自定義用戶控件

2009-09-02 16:30:20

C#定義數組

2009-09-02 11:18:10

C#動態數組
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一本一道久久a久久精品综合蜜臀 | 男女视频网站 | 欧美综合一区二区三区 | 9久久婷婷国产综合精品性色 | 国产精品综合网 | 国产精品久久国产精品久久 | 亚洲性人人天天夜夜摸 | 91.xxx.高清在线 | 日韩成人在线观看 | 亚洲精品免费观看 | www.精品一区 | 国产精品91网站 | 中文av电影| 欧美激情在线播放 | 国产一区二区三区在线 | 国产激情第一页 | 视频一区二区在线观看 | 国产农村妇女精品一二区 | 北条麻妃国产九九九精品小说 | 日韩中文一区二区三区 | 日本天堂视频在线观看 | 视频羞羞| 免费成人av网站 | 久久精品欧美一区二区三区不卡 | 丁香久久 | 一区二区三区四区在线视频 | 精品综合久久久 | 国产精品视频免费观看 | 性生活毛片 | 亚洲一在线 | www.青娱乐| 国产精品久久久久久久免费大片 | 欧美亚洲视频 | 一区二区三区精品视频 | 亚洲精品在线观看网站 | 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 欧美精品一区二区三区四区 | 欧美成人免费在线 | 精品一区二区av | 久久机热| 亚洲国产精品久久 |