2015-07-18 3 views
0

Я пишу надстройку, чтобы идентифицировать все типы методов (функции, процедуры и события) в классе;Как идентифицировать события и связанные с ним элементы управления в (Code)?

Я хочу добавить определенный набор кода в зависимости от вышеуказанных типов. В настоящее время я могу объединить функции и процедуры с помощью vsCMFunction.vsCMFunctionFunction и vsCMFunction.vsCMFunctionSub соответственно.

Как я могу идентифицировать события и связанные с ним контрольные имена, используя то же самое.

ответ

0

Для навигации по элементам кода файла рекурсивно см. HOWTO: Navigate the code elements of a file from a Visual Studio .NET macro or add-in. Затем каждый элемент EnvDTE.CodeElement имеет свойство Kind, которое позволяет идентифицировать в элементе кода пространство имен, класс, событие, метод, свойство, делегат и т. Д. Чтобы получить конкретные свойства, вы можете применить EnvDTE.CodeElement к определенному коду такие элементы, как EnvDTE.CodeClass, EnvDTE80.CodeEvent. и т.д.

Теперь, если вы имеете в виду, что вы хотите, чтобы определить методы, которые обработчиков событий (который отличается от идентификации события, что класс может поднять), нет простого ответа и код модель выиграла» t помочь. Для VB.NET вы можете идентифицировать их, если они включают предложение «Ручки» в декларации, а для C# вам нужно привязать обработчик события в файле конструктора. Или вы можете попробовать IEventBindingService. Эта другая статья может помочь вам, потому что если что-то связано (привязать метод к обработчику событий): HOWTO: Add an event handler from a Visual Studio add-in

 Смежные вопросы

  • Нет связанных вопросов^_^