gpt4 book ai didi

c# - WPF 在 WPF 窗口中打开 exe 程序

转载 作者:可可西里 更新时间:2023-11-01 13:25:51 32 4
gpt4 key购买 nike

不确定这是否可行,但有没有办法在 WPF 窗口的容器中打开另一个程序,如记事本?类似于能够使用 webbrowser 控件打开网页?

基本上我想打开记事本或其他 exe,但使用 xaml/c# 代码将其限制在 WPF 窗口容器内?不确定是否可能?

最佳答案

是的,这是可能的。

您所要做的就是:

  1. 创建 WindowsFormsHost 并将其添加到 UI 中的面板
  2. 使用 Process.Start 启动进程(例如记事本)
  3. 调用process.WaitForInputIdle
  4. 使用process.MainWindowHandle获取窗口句柄
  5. 调用SetWindowPos将进程的窗口设置为HwndHost窗口的坐标和Z Order
  6. Hook HwndHost 和 process.MainWindowHandle 以检测大小变化并重复步骤 5。

所有这些操作都非常简单。效果是整个记事本窗口(或您启动的任何应用程序)的显示和行为就像它是 WPF 应用程序的一部分一样。

关于c# - WPF 在 WPF 窗口中打开 exe 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2610924/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com