如何在线程中给委托方法里的方法传参数
2006-08-26 18:18
323 查看
最近在优化我以前的项目时,需要在给原来的委托方法里的方法传递对象,而我要用这个对象来动态生成DataTable,运行时报错:“在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级”。
所以我再次声明一个委托,然后我在方法里再次使用多线程,在这个线程中启动另一个方法来完成我要的工作,然后再次委托给另一个方法来实现。
说的我自己都晕了。。。还是用代码来说话吧。
1public delegate void data_1Callback(DataTable dataTable); //委托操作DATATABLE
2
3Remote.RemoteServer.UserCome += new Remote.UserComeHandler(RemoteServer_UserCome);
4这个是刚启动时线程里方法的又一委托。
5
6 public void RemoteServer_UserCome(object o,string user,string userIP)
7
13 void stopThread()
14
23public void BindDataGrid()
24
53private void data_1(DataTable dataTable)
54 try
56 this.dgUser.DataSource = dataTable;
58 this.dgUser.Refresh();
59 }
60 catch(Exception ex)
61 MessageBox.Show(ex.Message.ToString());
63 }
64 }
看起来好像有些乱,有不懂的给我留言吧。
所以我再次声明一个委托,然后我在方法里再次使用多线程,在这个线程中启动另一个方法来完成我要的工作,然后再次委托给另一个方法来实现。
说的我自己都晕了。。。还是用代码来说话吧。
1public delegate void data_1Callback(DataTable dataTable); //委托操作DATATABLE
2
3Remote.RemoteServer.UserCome += new Remote.UserComeHandler(RemoteServer_UserCome);
4这个是刚启动时线程里方法的又一委托。
5
6 public void RemoteServer_UserCome(object o,string user,string userIP)
7
13 void stopThread()
14
23public void BindDataGrid()
24
53private void data_1(DataTable dataTable)
54 try
56 this.dgUser.DataSource = dataTable;
58 this.dgUser.Refresh();
59 }
60 catch(Exception ex)
61 MessageBox.Show(ex.Message.ToString());
63 }
64 }
看起来好像有些乱,有不懂的给我留言吧。
相关文章推荐
- C#如何在线程里调用带参数的方法
- C# 委托带参数的情况下如何传入到一个方法中
- 调用带参数的线程两种方法
- 我比较笨系列 《委托 》(一) 将方法作为方法的参数
- C#往线程里传参数的方法
- [C# 基础知识系列]专题三:如何用委托包装多个方法——委托链
- 如何向线程传递参数
- Winform跨线程操作控件,采用扩展方法适配.NET 2.0,C#封装委托方法
- 如何向线程传递参数
- 向线程传递参数的两种基本方法
- block 方法参数中带有block 如何生成 如何使用
- VC下提前注入进程的一些方法1——远线程不带参数
- 如何控制某个方法允许并发访问线程的个数?
- VC下提前注入进程的一些方法1——远线程不带参数
- 方法作为参数,委托应用
- java中如何给多线程中子线程传递参数?
- 线程启动一个带多个参数的方法
- 启动线程时传递参数的方法
- 了解Java线程的start方法如何回调run方法
- 蛙蛙请教:如何利用委托实现多个方法同时调用.