Обработка событий для объектов с поздней привязкой - PullRequest
1 голос
/ 07 мая 2009

Я хотел бы использовать автоматизацию MS Office и иметь обработчики событий, которые запускаются для событий, инициируемых пользователем. Например, если пользователь нажимает кнопку сохранения в Word, я хочу перехватить это событие и выполнить код в моей программе.

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

Проблема в том, что для команд AddHandler и Dim WithEvents требуются конкретные ссылки на объект, известный во время разработки. Учитывая это, как я могу определить обработчик событий, не имея ранней связанной ссылки на конкретную версию библиотеки Word?

Я могу попытаться сослаться на более раннюю версию Word, ожидая, что более новые версии Word будут обратно совместимы, но это кажется грязным и рискованным.

Есть ли лучший способ, чтобы не повозиться слишком далеко под одеялом?

Ответы [ 2 ]

2 голосов
/ 07 мая 2009

Это похоже на ответ, но ужасно. Мне придется прочитать это еще несколько раз.

http://www.codeproject.com/KB/cs/zetalatebindingcomevents.aspx

Есть ли лучшие варианты? Я сомневаюсь. это.

0 голосов
/ 22 мая 2009

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

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