C# 在Office插件C中实现BeginInvoke()#

C# 在Office插件C中实现BeginInvoke()#,c#,asynchronous,dispatcher,begininvoke,C#,Asynchronous,Dispatcher,Begininvoke,我的类代码中有一个方法,我希望通过使用BeginInvoke()调用它来异步运行。我之前曾尝试使用Dispatcher,但结果发现它不适用于WinForms应用程序和Office加载项,因此使用了BeginInvoke() 代码如下: private delegate void InvokeMacroDelegate(); private void Process() { this.BeginInvoke(new InvokeMacroDelegate(OnlineSt

我的类代码中有一个方法,我希望通过使用BeginInvoke()调用它来异步运行。我之前曾尝试使用Dispatcher,但结果发现它不适用于WinForms应用程序和Office加载项,因此使用了BeginInvoke()

代码如下:

private delegate void InvokeMacroDelegate();

private void Process()
    {
        this.BeginInvoke(new InvokeMacroDelegate(OnlineStream));
    }

private void OnlineStream()
    {
        //some process here
    }
我得到下面的错误

“ThisAddIn”不包含“BeginInvoke”和 最佳扩展方法重载 “DispatcherExtensions.BeginInvoke(Dispatcher,Action)”需要 “Dispatcher”类型的接收器

这里有什么问题,有什么解决办法?
谢谢。

WinForms
中提供
Control.BeginInvoke
@HamletHakobyan,谢谢,我已经使用System.Windows.Forms添加了;但错误仍然存在。@Chuôv您是否解决了问题?我发布了一个类似的问题。在
WinForms
available
Control.BeginInvoke
@HamletHakobyan,谢谢,我添加了使用System.Windows.Forms;但错误仍然存在。@Chuôv您是否解决了问题?我有一个类似的问题张贴。