Les formulaires Windows avaient une propriété win1.Handle qui, si je me souviens bien, retourne le handle de la poignée de la fenêtre principale?
Existe-t-il un moyen équivalent d'obtenir le handle d'une fenêtre WPF?
J'ai trouvé le code suivant en ligne,
IntPtr windowHandle = new WindowInteropHelper(Application.Current.MainWindow).Handle;
mais je ne pense pas que cela m'aidera car mon application a plusieurs fenêtres.
Merci!!
Réponses:
Eh bien, au lieu de passer
Application.Current.MainWindow
, transmettez simplement une référence à la fenêtre souhaitée:new WindowInteropHelper(this).Handle
et ainsi de suite.la source
Utilisez simplement votre fenêtre avec la classe WindowsInteropHelper:
En ce moment, vous demandez la fenêtre principale de l'application, dont il y en aura toujours une. Vous pouvez cependant utiliser cette même technique sur n'importe quelle fenêtre, à condition qu'il s'agisse d'une classe Window dérivée de System.Windows.Window.
la source
vous pouvez utiliser :
la source
Si vous voulez des poignées de fenêtre pour TOUS vos applications
Window
pour une raison quelconque, vous pouvez utiliser laApplication.Windows
propriété pour obtenir à tous les Windows, puis utiliserWindowInteropHandler
pour accéder à leurs poignées comme vous l'avez déjà démontré.la source