题
我想在旧版 win32 应用程序中使用 WPF 窗口。我想以类似的方式表现它们,就像 WPF 窗口始终显示在 win32 窗口顶部。
为此,我想将 WPF 窗口的所有者设置为 win32 窗口,但我不知道如何实现这一点。
这里有什么帮助吗?
由于答案隐藏在某个链接后面,因此这里的代码实现了这一点:
System::Windows::Interop::WindowInteropHelper^ helper = gcnew System::Windows::Interop::WindowInteropHelper(myWpfChildWindow);
helper->Owner = (System::IntPtr)myMainWindowHWND;
解决方案
本文介绍如何获取两者的句柄以及如何使 WPF 窗口成为 win32 窗口的透明覆盖层。
本文使用 WindowInteropHelper 来完成类似的功能。
WindowInteropHelper 上的 MSDN 页面:
http://msdn.microsoft.com/en-us/library/system.windows.interop.windowinterophelper.aspx
希望有所帮助
其他提示
如何 SetParent()
?我知道作品做一个WPF窗口中的Windows窗体的MDI子的时候。
不隶属于 StackOverflow