我试图通过按下按钮从Win32应用程序的对话框中调用模式WPF对话框但是每次调用对话框后,如果我尝试最小化并最大化应用程序(或任何其他使应用程序失去焦点),对话框隐藏在应用程序后面。
我正在调用dialog.Activate()
方法来调用激活的对话框,并且它似乎也是模态的,因为我无法与调用它的Win32对话框或Win32应用程序本身进行交互。但是一旦应用程序失去焦点,WPF对话框就会落后于应用程序。
我也可以在从WPF应用程序调用WPF对话框时看到同样的问题,但是通过将WPF对话框的dialog.Owner
属性设置为调用它的对话框,我很容易解决它但我不是确定我如何从Win32应用程序中执行此操作。我在我的WPF对话框中编写了一个C ++ / CLI包装器,我在Win32应用程序中使用它来调用WPF对话框。我想通过包装器设置Owner属性,但我不确定如何将Win32对话框窗口设置为System.Windows.Window
对话框的所有者。