我有一个 WinForm 对话框,我想将其 Parent 属性设置为 WPF 窗口。
我怎样才能做到这一点?
最佳答案
考虑将参数传递给 ShowDialog
方法而不是使用 Parent
属性(property)。
您可以编写助手类
class Wpf32Window : IWin32Window
{
public IntPtr Handle { get; private set; }
public Wpf32Window(Window wpfWindow)
{
Handle = new WindowInteropHelper(wpfWindow).Handle;
}
}
public static class WindowExtensions
{
public static IWin32Window GetWin32Window (this Window parent)
{
return new Wpf32Window(parent);
}
}
之后你就可以写
winFormsWindow.Show(yourWpfWindow.GetWin32Window());
关于wpf - 以 WPF 窗口为父级的 Winform 对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7822164/