System.InvalidOperationException:“调用线程必须为 STA,因为许多 UI 组件都需要。” 这个异常通常发生在尝试在非单线程单元(STA,Single-Threaded Apartment)线程中访问某些 UI 组件时。在 .NET 中,许多 UI 框架(如 Windows Forms 和 WPF)要求与其交互的线程必须是 STA 线程。这是因为这些 UI 框架不是线程安全的...
WPF中,代码中准备控制控件内容时,有时会报错:“ 调用线程必须为 STA,因为许多 UI 组件都需要 ”。 如在winform下面,使用多线程时,控件的值读取是可以的,但如果要更改,那么就必须进行一些特别的处理。WPF中也一样。 首先,WPF中,当报上面那个错误时,代码可以改成类似以下: void authOK(AuthorizationResult auth) ...
调用线程必须为STA,因为许多UI组件都需要。 Thread NetServer = new Thread(new ThreadStart(NetServerThreadFunc)); NetServer.Start(); WPF工程里,此线程不可以操作UI元素,如果在线程中调用了UI处理,则会弹出如上错误。避免方法如下: 1、public delegate void DeleFunc(); public void Func() { //使用ui元...
那么WPF里面,有个所谓UI线程,后台代码不能直接操作UI控件,需要控制,就要通过这个Dispatcher。
我强烈建议将UI代码从背景代码中分离出来,并让UI层“驱动”业务/背景代码。
如果从主线程进行调用,则必须将STAThread属性添加到main方法中,如前面的答案所述。
调用线程必须为 STA,因为许多 UI 组件都需要 2011-04-15 16:30 −Thread NetServer = new Thread(new ThreadStart(NetServerThreadFunc)); NetServer.Start(); WPF工程里,此线程不可以操作UI元素,避免方法如下: 1、public ... 山河 0 1461 调用线程必须为 STA,因为许多 UI 组件都需要 ...
调用线程必须为 STA,因为许多 UI 组件都需要 2011-04-15 16:30 −Thread NetServer = new Thread(new ThreadStart(NetServerThreadFunc)); NetServer.Start(); WPF工程里,此线程不可以操作UI元素,避免方法如下: 1、public d... 山河 0 1463
调用线程必须为 STA,因为许多 UI 组件都需要 50 请教大家一个问题:在aspx页面上new了一个WPF控件,比如ContentControl,执行后报异常,异常信息如下:调用线程必须为STA,因为许多UI组件都需要。有遇到过该问题的没... 请教大家一个问题:在aspx页面上new了一个WPF控件,比如ContentControl,执行后报异常,异常信息如下:...
C#调用线程必须为 STA,因为许多 UI 组件都需要。 异常: 引发了异常: PresentationCore.dll 中的“System.InvalidOperationException”(“调用线程必须为 STA,因为许多 UI 组件都需要。”)。引发了异常: PresentationCore.dll 中的“System.InvalidOperationException”(“调用线程必须为 STA,因为许多 UI 组件都需要。”...