gpt4 book ai didi

windows - ElementHost 中的 Application.Current 为空

转载 作者:可可西里 更新时间:2023-11-01 12:22:14 25 4
gpt4 key购买 nike

我在个人库中使用 WPF 用户控件。这些库包含在我的 WPF 和 WindowsForms 程序中。现在我的 UserControl 必须显示一个新的 (WPF) 窗口。在新窗口中,我想设置所有者。我这样做:

dialog.Owner = Application.Current.MainWindow;

如果我在 WPF 程序中使用 UserControl,这工作正常。

当我在 WindowsForms 程序中使用 UserControl 时(我在 ElementHost elementHost.Child = ... 中设置 UserControl)为 Application.Current null。

这不好,我的程序抛出异常。

为什么 Application.Current 为空?

最佳答案

Application.Current 特定于 WPF 应用程序
因此,当您在 WinForms 应用程序中使用 WPF 控件时,您需要初始化 WPF 应用程序的实例。在您的 WinForms 应用程序中执行此操作。

if ( null == System.Windows.Application.Current )
{
new System.Windows.Application();
}

关于windows - ElementHost 中的 Application.Current 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12198244/

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