程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#編程利器之四:委托與事件(Delegate and event) (上)(5)

C#編程利器之四:委托與事件(Delegate and event) (上)(5)

編輯:關於C語言

代碼如下:

1private ProcessNumber pn = null;
2ShowNumberDel del = null;
3
4private void Form1_Load(object sender, EventArgs e)
5{
6   pn = new ProcessNumber(100);
7}
8
9//到控制台
10private void ShowInConsole(object[] items)
11{
12  foreach (object item in items)
13  {
14    Console.WriteLine(item);
15  }
16}
17
18//到ListBox
19private void ShowInListBox(object[] items)
20{
21  listBox1.Items.Clear();
22  foreach (object item in items)
23  {
24    listBox1.Items.Add(item);
25  }
26}
27
28//到文本文件
29private void ShowInFile(object[] items)
30{
31  using (StreamWriter sw = new StreamWriter("Test.txt", true))
32  {
33    foreach (object item in items)
34    {
35      sw.WriteLine(item);
36    }
37  }
38}

使用委托:

1private void button1_Click(object sender, EventArgs e)
2{
3  pn.ProcessItems(new ShowNumberDel(ShowInConsole));
4}
5
6private void button2_Click(object sender, EventArgs e)
7{
8  pn.ProcessItems(new ShowNumberDel(ShowInListBox));
9}
10
11private void button3_Click(object sender, EventArgs e)
12{
13  pn.ProcessItems(new ShowNumberDel(ShowInFile));
14}
15
16private void button4_Click(object sender, EventArgs e)
17{
18  del += new ShowNumberDel(this.ShowInListBox);
19  del += new ShowNumberDel(this.ShowInFile);
20
21  pn.ProcessItems(del);
22}

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