Ist es möglich win32 messages mit wpf über z.B. ein
Fenster : System.Windows.Window zu empfangen,
wie dieses bei forms immer mit WndProc möglich war ?
Gibt es unter System.Windows.Window eine Funktion die dieses ermöglicht oder
wie würde man am besten vorgehen um ein win32 message handling für eine gesamte Applikation zu ermöglichen. Falls möglich wäre ich auch für code snippets dankbar.
Gruß Diver
Es gibt in System.Windows.Interop die Klasse ComponentDispatcher. Mit der kannst du Tastaturmessages verarbeiten. Die ganzen Messages die mit der GUI zu tun haben WM_PAINT und was weiß ich noch, gibts in WPF nicht mehr in der Form da die GUI ja durch DirectX gerendert wird.
Baka wa shinanakya naoranai.
Mein XING Profil.
ComponentDispatcher bezieht sich, wie du es ja festgestellt hast nur auf Keyboard messages. Wie sähe dies nun mit z.B. system messages aus.
Gibt es irgendeine vom framework vorgesehene Vorgehensweise für das Verarbeiten von Messages dieser Art ?
In einer WPF Anwendung empfängt keiner diese Nachrichten, deshalb gibts soweit ich weiß auch keinen Punkt wo du ansetzen könntest.
Was mir noch einfallen würde:
Du verwendest ein HwndHost um ein altes Win32 Control einzubinden, das empfängt die Nachrichten regulär und die kannst du an deine WPF Anwendung zurückgeben.
Baka wa shinanakya naoranai.
Mein XING Profil.
Ja das war auch genau der letzte "work-around" den ich sah.
Allerdings muss man sich, falls dieses wirklich die einzige Möglichkeit ist, doch
wirklich fragen ob hier nicht grobe design fehler im framework gemacht wurden.
Jedenfalls soweit danke für den Abgleich.