C#调用线程必须为 STA,因为许多 UI 组件都需要。
作者:互联网
异常: 引发了异常: PresentationCore.dll 中的“System.InvalidOperationException”(“调用线程必须为 STA,因为许多 UI 组件都需要。”)。引发了异常: PresentationCore.dll 中的“System.InvalidOperationException”(“调用线程必须为 STA,因为许多 UI 组件都需要。”)
引起异常就下这句:
titleLab.Content = "通话中..." + msg;
引起异常是因为那么WPF里面,有个所谓UI线程,后台代码不能直接操作UI控件,需要控制,就要通过这个Dispatcher。
如下处理:
Dispatcher.BeginInvoke(new Action(delegate { titleLab.Content = "消息..." + msg; }));
问题解决。
标签:调用,STA,C#,UI,组件,线程,异常 来源: https://www.cnblogs.com/xfweb/p/15915184.html