"The calling thread must be STA, because many UI components require this"解决办法

我的使用情况是想在Task.Factory.StartNew(()=>)中调用控件的静态方法。结果报错,封装Task又很麻烦。
后来找到替代的解决方法,如下:

1.先创建一个委托
public delegate void ShowMessage(string message);
ShowMessage showMessage;

2.使用委托绑定方法
showMessage = ResultShow;

3.准备调用

System.Windows.Application.Current.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal,
showMessage,"Result");

private void ResultShow()
{
   DXMessageBox.Show("修改成功");
}

这样就不这样就不会报错啦。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页