首页 新闻 会员 周边

c#语法高手进....

0
悬赏园豆:5 [已解决问题] 解决于 2013-02-28 23:36

1.winform跨线程可以这样访问

List<string> List = new List<string>() { "c#", "JAVA" };
this.Invoke((new Action(() => { this.dataGridView1.DataSource = List; })));

 

怎么不能这样??

this.Invoke(() => { this.dataGridView1.DataSource = List; });

 

除了第一种方法还能怎样定义?

KeVinDurant的主页 KeVinDurant | 初学一级 | 园豆:5
提问于:2013-02-27 21:08
< >
分享
最佳答案
0

因为lambda表达式无法转换为delegate. 如果使用Backgroundworker,则编程会更加直观一些,在Completed事件中直接可以写 this.dataGridView1.DataSource = List;无须切换线程

收获园豆:5
陈希章 | 老鸟四级 |园豆:2538 | 2013-02-28 07:02
其他回答(1)
0

一直没跨越2.0语法的票过。

还是原始语法,定义委托,调用。

路过秋天 | 园豆:4787 (老鸟四级) | 2013-02-27 22:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册