findWPF窗口的句柄
Windows窗体有一个属性win1.Handle,如果我记得,返回主窗口句柄的句柄?
有没有相当的方式来获得WPF窗口的句柄?
我在网上find了下面的代码,
IntPtr windowHandle = new WindowInteropHelper(Application.Current.MainWindow).Handle;
但我不认为这会帮助我,因为我的应用程序有多个窗口。
谢谢!!
那么,而不是传递Application.Current.MainWindow
,只是传递一个引用到你想要的任何窗口: new WindowInteropHelper(this).Handle
等等。
只需使用WindowsInteropHelper类的窗口即可:
// ... Window myWindow = get your Window instance... IntPtr windowHandle = new WindowInteropHelper(myWindow).Handle;
现在,您正在请求应用程序的主窗口,其中总会有一个窗口。 您可以在任何窗口上使用相同的技术,但是,只要它是一个System.Windows.Window派生的Window类。
您可以使用 :
Process.GetCurrentProcess().MainWindowHandle
如果因为某种原因需要所有应用程序Window
的窗口句柄,则可以使用Application.Windows
属性获取所有Windows,然后使用WindowInteropHandler
获取它们的句柄, WindowInteropHandler
。