110,538
社区成员
发帖
与我相关
我的任务
分享
Invoke((Action)(() => { }));
Invoke((EventHandler)((s,e) => { }));
Task.Factory.StartNew(() =>
{
for (var i = 0; i < 101; i++)
{
n = i;
Invoke(new EventHandler(delegate
{
doNothing(n);
}));
}
});
private int n = 0;
private void button1_Click(object sender, EventArgs e)
{
Task.Factory.StartNew(() =>
{
for (var i = 0; i < 101; i++)
{
n = i;
Invoke(new Action<int>(doNothing), n);
}
});
}
void doNothing(int i)
{
progressBar1.Value = i;
}
private void doNothing(int j)
{
Thread.Sleep(200);
progressBar1.Invoke(new Action(() => progressBar1.Value = j));
}
Task task = Task.Factory.StartNew(() =>
{
for(int i=0;i<101;i++)
{
doNothing(i);
}
});
测试通过
...new Action(doNothing(n));