Перехват события щелчка для всех элементов управления в приложении на C # (WinForms)

Я хочу создать приложение, которое перехватывает все события пользовательского интерфейса во всех формах моего приложения и записывает их в журнал. Затем эти данные можно использовать, чтобы увидеть, какие элементы управления используются чаще всего, в каком порядке и т. Д. Проблема в том, что я хочу, чтобы это происходило автоматически, без изменения существующих классов.

Я создал прототип, который присоединяет метод к событие щелчка для всех элементов управления в форме, но как это можно сделать для всех форм? При манипулировании событиями отражению нужен целевой объект, но легко получить доступ только к форме запуска.

Есть ли способ перехватить конструктор объекта? Тогда я мог «внедрить» свой метод во все события новой формы. Или, может быть, есть другой способ сделать это.

Заранее спасибо!

6
задан Gratian Lup 25 November 2010 в 17:52
поделиться