原创  C# 2.0 匿名方法与 Windows Forms 异步调用 收藏

C# 2.0 匿名方法大大简化了 Windows Forms 异步调用的实现,我们再也不用手工定义异步委托或者包装类了。例如,在下面的代码示例中,Form1 有一个按钮控件和一个列表控件,在按钮控件的单击事件里,我们新建一个线程,在这个线程中向列表控件添加 10 个项目:

public class Form1 : System.Windows.Forms.Form
{
    private System.Windows.Forms.ListBox listBox1;
    private System.Windows.Forms.Button button1;

    ...

    private void button1_Click(object sender, EventArgs e)
    {
        Thread thread = new Thread(this.ThreadProc);
        thread.Start();
    }

    private void ThreadProc()
    {
        for (int i = 0; i < 10; i++)
        {
            this.Invoke((MethodInvoker)delegate
            {
                this.listBox1.Items.Add("Item " + (i + 1).ToString());
            });
        }
    }
}

发表于 @ 2004年10月02日 12:08:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:Windows Forms 1.x 批判 | 新一篇:使用 GDI+ 绘制有间距的文本

  • 发表评论
  • 评论内容:
  •  
Copyright © classfactory
Powered by CSDN Blog