用窗户把手把窗户做成最高层

启动一个使用Process类的应用程序之后,我想把这个窗口放在最上面。 目前,我的应用程序是最上面的窗口,所以当我启动另一个应用程序不会显示。 有一件事想到的是,我可以设置最顶层= false为我的应用程序在启动过程之前,这个问题是我想给过程有足够的时间加载之前显示给用户,所以我想当我将其他应用程序切换到最顶层时,可以进行更多的控制。

你需要使用SetWindowPos来调用P / Invoke :

[DllImport("user32.dll")] static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags); static readonly IntPtr HWND_TOPMOST = new IntPtr(-1); const UInt32 SWP_NOSIZE = 0x0001; const UInt32 SWP_NOMOVE = 0x0002; const UInt32 SWP_SHOWWINDOW = 0x0040; // Call this way: SetWindowPos(theWindowHandle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);