如何在 c# 3.0 下更改 invoke(new action)
How can I change invoke(new action) under c# 3.0
我在.Net Framework 4.5下做了一个WinForm程序
现在我尝试在 .Net Framework 3.0 下制作它
使用线程,调用 "Control.Invoke" 到 Datagridview,但它不起作用..
我的代码是这样的
private void btnStart_Click(object sender, EventArgs e)
{
Thread th = new Thread(new ThreadStart(StartAnalyseTheSite));
th.IsBackground = true;
th.Start();
}
private void StartAnalyseTheSite()
{
InsertWebApplicationInfo();
SelectWebApplicationInfo();
}
private void InsertWebApplicationInfo()
{
DoSomething...
}
private void SelectWebApplicationInfo()
{
this.Invoke(new Action(() => { grdWebApplication.DataSource = dtwebApp; }));
}
和
this.Invoke(新动作(() => { grdWebApplication.DataSource = dtwebApp; }));
此代码无效...
错误消息是 ->
'Action' 不包含接受 1 个参数的构造函数
我该如何更改该代码??有人帮帮我
您可以使用这样的代码:
this.Invoke(new MethodInvoker(delegate() { /*Do something*/ }));
我在.Net Framework 4.5下做了一个WinForm程序
现在我尝试在 .Net Framework 3.0 下制作它
使用线程,调用 "Control.Invoke" 到 Datagridview,但它不起作用..
我的代码是这样的
private void btnStart_Click(object sender, EventArgs e)
{
Thread th = new Thread(new ThreadStart(StartAnalyseTheSite));
th.IsBackground = true;
th.Start();
}
private void StartAnalyseTheSite()
{
InsertWebApplicationInfo();
SelectWebApplicationInfo();
}
private void InsertWebApplicationInfo()
{
DoSomething...
}
private void SelectWebApplicationInfo()
{
this.Invoke(new Action(() => { grdWebApplication.DataSource = dtwebApp; }));
}
和
this.Invoke(新动作(() => { grdWebApplication.DataSource = dtwebApp; }));
此代码无效...
错误消息是 ->
'Action' 不包含接受 1 个参数的构造函数
我该如何更改该代码??有人帮帮我
您可以使用这样的代码:
this.Invoke(new MethodInvoker(delegate() { /*Do something*/ }));