不确定这是否可行,但有没有办法在WPF窗口的容器内打开另一个程序,如记事本?类似于能够使用webbrowser控件打开网页吗?
基本上我想打开notepad或其他exe,但是使用xaml / c#代码将它限制在WPF窗口容器中?不确定是否可能?
答案 0 :(得分:6)
是的,这是可能的。
您所要做的就是:
完成所有这些操作非常简单。效果是整个记事本窗口(或您启动的任何应用程序)出现,其行为就像它是WPF应用程序的一部分一样。
答案 1 :(得分:1)
设法使用SetParent方法
执行此操作[DllImport("user32.dll", SetLastError = true)]
private static extern IntPtr SetParent(IntPtr hwc, IntPtr hwp);
所以通过获取wpf窗口的句柄然后获取exe窗口,我能够将wpf窗口设置为父窗口,因此它给出了嵌入的模拟(也关闭了标题栏等)
从这里获得帮助:http://channel9.msdn.com/forums/TechOff/250417-Hide-window-caption-in-c/
答案 2 :(得分:-1)
你做不到。
您可以查看网页的原因是因为IE是使用允许它的架构设计的 - 渲染引擎实际上不是实际IE可执行文件的一部分,而是暴露组件的DLL。
通用EXE无法正常工作,您无法将其嵌入到应用中。