Entwickler-Ecke

WinForms - Global SetFocus und KillFocus von Textboxen abfangen


Cjreek - Mi 04.11.15 12:21
Titel: Global SetFocus und KillFocus von Textboxen abfangen
Hallo,

Ich versuche mitzubekommen wenn Textboxen in meiner Anwendung den Focus erhalten oder verlieren.
Mein Ansatz war Application.AddMessageFilter, allerdings erhalte ich da weder WM_SETFOCUS noch WM_KILLFOCUS noch WM_COMMAND oder WM_NOTIFY.
Gibt es dafür einen Grund? Mache ich einen Denkfehler?


Ralf Jansen - Mi 04.11.15 13:09

Ich vermute mal die Focus Messages gehen nicht durch die MessagePump der Application (in der sich der IMessageFilter einreiht) sondern werden direkt ans Ziel Handle gepostet.
Möglicherweise funktioniert ein WH_GETMESSAGE WindowHook [https://msdn.microsoft.com/de-de/library/windows/desktop/ms644959%28v=vs.85%29.aspx].