建立一个类,类在执行中访问窗口中的richbox,练习跨线程的访问。
首先建立一个类
1 //建立一个委托 2 delegate void Msghandler(string txt); 3 4 class test 5 { 6 //建立一个事件 7 public event Msghandler MsgEvent; 8 9 public void Start() 10 { 11 for (int i = 0; i < 10; i++) 12 { 13 //检查是否绑定到事件 14 if (MsgEvent != null) 15 { 16 //事件响应 17 MsgEvent(i.ToString()); 18 } 19 } 20 } 21 }
然后在窗口界面
1 private void btn_Click(object sender, EventArgs e) 2 { 3 //实例化类 4 test t = new test(); 5 6 //定义事件执行方法 7 t.MsgEvent += t_MsgEvent; 8 9 //执行程序 10 t.Start(); 11 } 12 13 //事件执行方法 14 void t_MsgEvent(string txt) 15 { 16 rbox.AppendText(txt + "\r\n"); 17 }
ok,练习完成,点击按钮即可显示