我在WindowsForms中有一个名为grid1
的网格。
我知道想从另一个线程中调用grid1.Series.Clear()
。
现在我得到通常的交叉线程异常,一个线程正在触及grid1,但是另一个线程创建了它。
我找到了很多关于如何调用grid1的直接函数的例子。
但是如何通过在grid1中调用SeriesCollection“Series”中的Clear()
函数来做到这一点?
答案 0 :(得分:1)
如下所示:
grid1.BeginInvoke(new MethodInvoker(() => grid1.Series.Clear()));
答案 1 :(得分:1)
也许这会有所帮助。
如果你想为此创建一个函数,这就是一个例子。
delegate void FunctionNameCallBack(InputParams);
private void FunctionName(InputParams)
{
if (this.InvokeRequired)
{
var d = new FunctionNameCallBack(FunctionName);
this.Invoke(d, InputParams);
}
else
{
// Your Code here.
}
}
答案 2 :(得分:-1)
此代码在创建grid1控件
的线程以外的线程上运行grid1.Invoke((MethodInvoker)(() => grid1.Series.Clear()));