gpt4 book ai didi

wpf - 尝试打开新窗口时抛出 InvalidOperationException

转载 作者:行者123 更新时间:2023-12-02 01:21:08 24 4
gpt4 key购买 nike

我有一个 WPF 应用程序,其中 MainNavigationWindow 在其构造函数中注册了其他一些类的事件:

SomeClass obj = new SomeClass(); 
obj.SomeEvent += new EventHandler(SomeEventHandler);

在 EventHandler 方法中,我尝试显示另一个窗口,例如:

SomeWindow window = new SomeWindow();
window.ShowDialog();

但是在创建新对象时会抛出上述异常。谁能告诉我可能出现的问题是什么以及如何解决它?

请注意,SomeWindow 仅派生自 System.Window。

最佳答案

听起来该事件并未在 UI 线程中引发,您需要在创建窗口之前编码(marshal)到 UI 线程。这可能就像将事件处理程序代码更改为一样简单:

Action action = () => {
SomeWindow window = new SomeWindow();
window.ShowDialog();
};
Dispatcher.BeginInvoke(action);

关于wpf - 尝试打开新窗口时抛出 InvalidOperationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4274553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com