【问题标题】:How can I set Form Window's owner to WPF Window?如何将窗体窗口的所有者设置为 WPF 窗口?
【发布时间】:2021-08-25 14:13:22
【问题描述】:

我的应用程序是在 WPF .NET Framework 中构建的。

我有一个 WPF MainWindow,我想将几​​个 FormWindows 作为 WPF MainWindow 的子窗口。在创建父 WPF 窗口的子 WPF 窗口时,我可以简单地将Owner = this 放入子窗口,但它当然不适用于窗体窗口。

有什么办法可以实现吗?

提前致谢

【问题讨论】:

标签: c# wpf winforms


【解决方案1】:

不,您不能将 WPF 窗口的 Owner 属性设置为除另一个 WPF 窗口之外的任何其他内容。

有一个WindowInteropHelper 类有一个Owner 属性,可以设置为表单的HWND:

Form1 form = new Form1();
WindowInteropHelper wih = new WindowInteropHelper(wpfWindow);
wih.Owner = form.Handle;

另一个建议是跳过表单并将表单的内容移动到 WPF 窗口中,例如使用 WindowsFormsHost 控件。

【讨论】:

    猜你喜欢
    • 2011-02-05
    • 1970-01-01
    • 1970-01-01
    • 2013-04-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 2014-10-12
    • 2016-06-10
    相关资源
    最近更新 更多