我正在对在测试中执行以下操作的一段代码运行单元测试:
Assert.IsNotNull(target.Icon);
在 Icon 属性的 getter 中,我这样做:
System.Windows.Controls.Image img = new System.Windows.Controls.Image();
这引发了这个异常: System.InvalidOperationException :调用线程必须是 STA,因为许多 UI 组件都需要这个。
我理解这意味着什么,并且我知道我需要使用 Dispatcher,但我对如何或为什么有点困惑......这是我的 ViewModel 的一个属性,运行时我没有得到任何这些异常应用程序。
其他信息:这只是在我升级到 .NET 4 时才开始失败。