0

我必须在明天早上提交我的 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);

代码必须在 VS 2008 中运行。

4

1 回答 1

7

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

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

Dispatcher.Invoke(DispatcherPriority.Normal, new Action(() =>
   {
      // ...some task
   }));
于 2013-04-01T19:04:48.920 回答