c# - 无法将匿名方法转换为类型 'System.Windows.Threading.DispatcherPriority',因为它不是委托(delegate)类型

标签 c# wpf dispatcher

谁能解释一下我需要做什么才能克服这个错误?

“无法将匿名方法转换为类型“System.Windows.Threading.DispatcherPriority”,因为它不是委托(delegate)类型”

    private void Test(object sender)
    {
        base.Dispatcher.BeginInvoke(delegate
        {
                       //some code

        }, new object[0]);
    }

谢谢

最佳答案

如果您使用的是 .NET 3.5 SP1 及更高版本,则可以添加对 System.Windows.Presentation.dll 的引用并确保您拥有 using System.Windows.Threading;在文件的顶部。它包含更易于使用的扩展方法,并且允许您简单地编写:

base.Dispatcher.BeginInvoke(() => { /* some code */ });

如果您使用的是没有 SP1 或更低版本的 .NET 3.5,则必须将委托(delegate)转换为具体的委托(delegate)类型:

base.Dispatcher.BeginInvoke((Action) delegate { /* some code */ }, new object[0]);

关于c# - 无法将匿名方法转换为类型 'System.Windows.Threading.DispatcherPriority',因为它不是委托(delegate)类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12898031/

相关文章:

c# - 使用 StructureMap 的 Autowiring 器

wpf - WPF 中不同 DPI 设置的鼠标位置错误

php - Silex 2 addListener 触发错误

java - 如何将请求从servlet 转发到struts2 的action?

c# - 使用自定义 WPF 控件时无法设置某些属性

Spring 对每个未经授权的 HTTP POST 返回 HTTP 405

c# - 如何将焦点设置到用户控件

c# - .Net 是否为每个 dll 和 exe 创建 1 个堆栈(用于存储值类型)或每个程序创建 1 个堆栈

c# - v2 中的 Woocommerce REST API POST 不起作用

c# - 无法绑定(bind)到 DataContext