使用windowHandle显示WPFHidden窗口

时间:2018-08-22 10:55:14

标签: c# wpf window-handles

我创建了一个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);

Wpf Window Before

Wpf Window After

0 个答案:

没有答案