Dispatcher.Invoke在vs2010中工作但在vs2008中出错

Nid*_*rma 0 c# wpf compiler-errors timer dispatcher

我明天早上必须提交我的WPF项目; 它在VS 2010中运行得很好,但是在使用C#的VS 2008(两种情况下都是.NET 3.5)中出错了.

我正在使用计时器,Dispatcher.Invoke但在VS 2008中它给出错误:

错误163
最佳重载方法匹配System.Windows.Threading.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority, System.Delegate)包含一些无效参数.

以下代码给出错误:

Dispatcher.Invoke(new Action(() =>
{
    // ANY ACTIONS HERE
    .. some task
}), null);
Run Code Online (Sandbox Code Playgroud)

代码必须在VS 2008中运行.

Ree*_*sey 7

听起来VS 2008版本的目标是.NET 3.0,而不是3.5.您使用重载是在.NET 3.5中添加的,错误消息表明正在找到.NET 3.0.

您可以通过以下方式使用3.0重载轻松地重新调用工作调用:

Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() =>
   {
      // ...some task
   }));
Run Code Online (Sandbox Code Playgroud)