我创建了一个WPF窗口并向其中添加了一些控件。 现在,我将获得窗口句柄并隐藏窗口。
我将创建单独的应用程序(控制台)并使用相同的windowHandle
在api下面显示窗口
[DllImport("User32")]
private static extern int ShowWindow(int hwnd, int nCmdShow);
但问题是窗口带有黑色背景。没有显示控件。
任何人都可以帮助完成它。 (使用窗口句柄显示WPF窗口)
WPF窗口代码
var windowInteropHelper = new WindowInteropHelper(this);
int tempHandle = (int)windowInteropHelper.Handle;
string filePath = @"C:\windowHandleLog.txt";
if (File.Exists(filePath))
{
File.Delete(filePath);
}
File.AppendAllText(filePath, tempHandle.ToString());
this.Hide();
控制台应用程序代码:
string filePath = @"C:\windowHandleLog.txt";
string handle = File.ReadAllText(filePath);
int windowHandle = Convert.ToInt32(handle);
ShowWindow(windowHandle, SW_SHOW);