Как перехватить сообщение в WinForms? - PullRequest
6 голосов
/ 29 августа 2011

Что такое WinForms эквивалентно следующей строке кода WPF?

HwndSource.FromHwnd(_windowHandle).AddHook(HwndSourceHookHandler);

Ответы [ 2 ]

5 голосов
/ 29 августа 2011

В WinForms вы обычно переопределяете WndProc в рассматриваемом элементе управления / форме. Поскольку каждый элемент управления по сути является HWND, вам не нужен стиль перехвата HwndSource.


Если вы хотите установить хук в C #, вы можете следовать указаниям в Как установить хук Windows в Visual C # .NET .

1 голос
/ 29 августа 2011

Внутри вашего собственного процесса вы можете использовать метод Application.AddMessageFilter для прослушивания определенных событий перед их отправкой куда-либо.Это не работает между процессами.

Я нашел это при поиске ответа на один из моих вопросов об обработке событий мыши между родительским и дочерним элементами управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...