Windows – Application.Current在ElementHost为null

前端之家收集整理的这篇文章主要介绍了Windows – Application.Current在ElementHost为null前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的个人Libs中使用WPF UserControl。 Libs包含在我的WPF和WindowsForms程序中。现在我的UserControl必须显示一个新的(WPF)窗口。在新的窗口我想设置所有者。我这样做:
dialog.Owner = Application.Current.MainWindow;

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

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

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

为什么是Application.Current null?

应用程序。特定于WPF应用程序。
因此,当您在WinForms应用程序中使用WPF控件时,您需要初始化WPF应用程序的实例。在您的WinForms应用程序中执行此操作。
if ( null == System.Windows.Application.Current )
{
   new System.Windows.Application();
}

猜你在找的Windows相关文章