使用“经典”方法实现,我通常像这样执行 BeginInvoke:
private delegate void FooDelegate();
public void Foo()
{
if(InvokeRequired)
{
BeginInvoke(new FooDelegate(Foo));
return;
}
// Do what you want here
}
当方法是显式接口成员声明时,如何做同样的事情?像:
public void IFace.Foo()
{
// Need to BeginInvoke here
}
这不起作用:
private delegate void FooDelegate();
public void IFace.Foo()
{
if(InvokeRequired)
{
BeginInvoke(new FooDelegate(IFace.Foo));
return;
}
// Do what you want here
}