Поделиться через


Использование шаблонов редактор для создания расширения

Можно использовать шаблоны, которые включены в Visual Studio 2010 Пакет SDK для создания основных расширения редактора, которые добавляют классификаторы, элементы оформления и поля в редактор.

Предварительные требования

Для использования шаблонов расширения редактора, необходимо устанавливать Visual Studio 2010 пакет SDK.

Примечание

Дополнительные сведения о пакете SDK для Visual Studio см. в разделе интеграция SDK Visual Studio.Чтобы узнать, как загрузить пакет SDK для Visual Studio см. в разделе Центр разработчиков расширяемости Visual Studio на веб-сайте MSDN.

Создание расширения классификатора

Шаблон классификатора редактор создает классификатор редактора, соответствующее цвета текста (в этом случае все) в любом текстовом файле.

Создание расширения классификатора с помощью шаблона классификатора редактора

  1. На Файл меню наведите курсор на пункт NEW затем перейдите Создать проект. в Создать проект разверните диалоговое окно Visual c# OR Visual Basic затем перейдите Расширение среды. в Шаблоны выберите панель Классификатор редактора. в Имя окно, тип TestClassifier. Нажмите кнопку ОК.

    Проект TestClassifier открыт.

  2. Откройте файл source.extension.vsixmanifest и правка он выглядит следующим образом:

    • Имя продукта. TestClassifier

    • Автор. Fabrikam

    • Версия. 1.0

    • Описание. это расширение классификатора теста.

    Не изменяйте идентификатор. Он создается автоматически.

  3. Содержимое заголовок определяет тип содержимого в этом проекте (каталоге шаблонов проектов каталоге шаблонов элементов, помощью мастера шаблонов, VSPackage компонентом MEF или настраиваемый тип расширения). Один проект может содержать один или несколько типов содержимого, например VSPackage и компонент MEF. Это расширение компонент MEF и содержимое определено в TestClassifier.

  4. 3 Файла кода следующим образом:

    • Содержит TestClassifierType OrdinaryClassificationType класс.

    • Содержит TestClassifierFormat OrdinaryFormat класс.

    • Содержит TestClassifier OrdinaryClassifier и класс OrdinaryClassifierProvider класс.

  5. OrdinaryClassificationType экспортирует класс ClassificationTypeDefinitionи определяет текст, в котором используются (в этом случае весь текст). Этот класс будет экспортирован вместе с NameAttribute, который используется для определения того, этот классификатор. Дополнительные сведения о классификациях см. в разделе "расширение типы классификации и классификация формат" Точки расширения редактора.

  6. OrdinaryFormat класс наследует из ClassificationFormatDefinitionи определяет визуальные эффекты, форматирование создаст в этом случае a BlueViolet цвет шрифта и a Underline. Этот класс должен экспортироваться как EditorFormatDefinition этот тип. Можно указать, следует ли виден пользователю, используя форматирование UserVisibleAttributeи можно указать порядок формат применяется к тексту с помощью OrderAttribute.

  7. GetClassificationSpans класс реализует OrdinaryClassifier метод, определяющий текст, который должен расклассифицированным с помощью "обычного" функции-классификатора (в этом случае весь текст).

  8. GetClassifier класс наследует из OrdinaryClassifierProvider и реализует IClassifierProviderметод, который создает классификатор. Этот класс будет экспортирован вместе с ContentTypeAttribute, указывающий тип содержимого (текста, кода или поэтому on), к которому применяется этот классификатор. Он также принимает TextViewRoleAttribute, указывающий тип представления текста которого могут быть любые значения PredefinedTextViewRoles.

  9. При построении это решение копии сборки и манифеста, помещаются в экспериментальном каталог.

  10. Если запустить этот проект в отладчике, второй экземпляр Visual Studio создается. Если открыть текстовый файл, то весь текст подчеркнут показано, как с лилового фона.

Создание Текст-Относительное расширение элемента оформления

Шаблон элемента оформления текста, редактор создает текст-относительный оформление, оформляет все экземпляры символа "a" текст с помощью окна, которое содержит красную структуру и синий фон. Он текст-относительн поскольку окно всегда overlays символы "a", даже если они перемещаются или переформатированных.

Для создания расширения элемента оформления текста с помощью редактора отправить СМС шаблон элемента оформления

  1. На Файл меню наведите курсор на пункт NEW затем перейдите Создать проект. в Создать проект разверните диалоговое окно Visual c# OR Visual Basic затем перейдите Расширение среды. в Шаблоны выберите панель Оформление текста редактора. в Имя окно, тип TestTextAdornment. Нажмите кнопку ОК.

    Проект TestTextAdornment открыт.

  2. Откройте файл source.extension.vsixmanifest и правка он выглядит следующим образом:

    • Имя продукта. TestTextAdornment

    • Автор. Fabrikam

    • Версия. 1.0

    • Описание. это расширение крайнего элемента теста текст-относительное.

    Не изменяйте идентификатор. Он создается автоматически.

  3. Содержимое заголовок определяет тип содержимого в данном проекте. Это расширение компонент MEF и содержимое определено в TestTextAdornment.

  4. 2 Файла кода следующим образом:

    • Содержит TestTextAdornment ScarletCharacter класс.

    • Содержит TestTextAdornmentFactory EditorAdornmentFactory класс.

  5. ScarletCharacter класс предоставляет функции пользовательского интерфейса (пользовательского интерфейса) элемента оформления в его конструкторе и дескрипторах LayoutChanged событие путем найти все вхождения знака "a" в IWpfTextView и добавление крайний элемент ScarletCharacter.

  6. TextViewCreated класс наследует из EditorAdornmentFactory и реализует IWpfTextViewCreationListener метод путем создания экземпляра крайний элемент. Этот класс также объявляет AdornmentLayerDefinition это соответствует элементу ScarletCharacter крайнему и экспортирует его вместе с NameAttribute" OrderAttributeи TextViewRoleAttribute.

  7. При построении это решение копии сборки и манифеста, помещаются в экспериментальном каталог.

  8. Если запустить этот проект в отладчике, второй экземпляр Visual Studio создается. Если открыть текстовый файл, то все символы "a", как описано в тексте отображаются красным цветом от синего фона.

Создание окна просмотра-Относительное расширение элемента оформления

Шаблон элемента оформления окна просмотра редактор создает окно просмотра-относительный крайний элемент, который добавляет лиловое окно, которое содержит красную структуру к верхнему правому углу окна просмотра.

Примечание

Окно просмотра область представления текста, который в настоящий момент.

Создание расширения элемента оформления окна просмотра с помощью шаблона элемента оформления окна просмотра редактора

  1. На Файл меню наведите курсор на пункт NEW затем перейдите Создать проект. в Создать проект разверните диалоговое окно Visual c# OR Visual Basic затем перейдите Расширение среды. в Шаблоны выберите панель Оформление окна просмотра редактора. в Имя окно, тип TestViewportAdornment. Нажмите кнопку ОК.

    Проект TestViewportAdornment открыт.

  2. Откройте файл source.extension.vsixmanifest и правка он выглядит следующим образом:

    • Имя продукта. TestViewportAdornment

    • Автор. Fabrikam

    • Версия. 1.0

    • Описание. Это расширение элемента оформления теста окно просмотра-относительное.

    Не изменяйте идентификатор. Он создается автоматически.

  3. Содержимое заголовок определяет тип содержимого в данном проекте. Это расширение компонент MEF и содержимое определено в TestViewportAdornment.

  4. 2 Файла кода следующим образом:

    • Содержит TestViewportAdornment PurpleCornerBox класс

    • Содержит TestViewportAdornmentFactory AdornmentFactory класс

  5. PurpleCornerBox класс предоставляет функции пользовательского интерфейса элемента оформления в конструкторе и обрабатывает ViewportHeightChanged и ViewportWidthChanged события путем удаления и повторно добавить оформление в правом верхнем углу окна просмотра.

  6. TextViewCreated класс наследует из AdornmentFactory и реализует IWpfTextViewCreationListenerметод путем создания экземпляра крайний элемент. Этот класс также объявляет AdornmentLayerDefinition это соответствует элементу PurpleCornerBox крайнему и экспортирует его вместе с NameAttribute" OrderAttributeи TextViewRoleAttribute.

  7. При построении это решение копии сборки и манифеста, помещаются в экспериментальном каталог.

  8. Если запустить этот проект в отладчике, второй экземпляр Visual Studio создается. Если открыть текстовый файл, лиловое окно, которое содержит красную структуру показано в правом верхнем углу окна просмотра.

Создание расширения полей

Шаблон полей редактор создает зеленые поля, отображаемые вместе с миром машинных слова "hello world!" под горизонтальной полосе прокрутки.

Создание расширения полей с помощью шаблона полей редактора

  1. На Файл меню наведите курсор на пункт NEW затем перейдите Создать проект. в Создать проект разверните диалоговое окно Visual c# OR Visual Basic затем перейдите Расширение среды. в Шаблоны выберите панель Поле редактора. в Имя окно, тип TestMargin. Нажмите кнопку ОК.

    Проект TestMargin открыт.

  2. Откройте файл source.extension.vsixmanifest и правка он выглядит следующим образом:

    • Имя продукта. TestMargin

    • Автор. Fabrikam

    • Версия. 1.0

    • Описание. это расширение полей теста.

    Не изменяйте идентификатор. Он создается автоматически.

  3. Содержимое заголовок определяет тип содержимого в данном проекте. Это расширение компонент MEF и содержимое определено в TestMargin.

  4. 2 Файла кода следующим образом:

    • Содержит TestMargin GreenMargin класс.

    • Содержит TestMarginFactory MarginFactory класс.

  5. GreenMargin класс наследует из Canvas и реализует IWpfTextViewMargin. Он предоставляет функции пользовательского интерфейса полей в конструкторе.

  6. CreateMargin класс реализует MarginFactory и его реализация IWpfTextViewMarginProviderсоздает метода поля. Этот класс будет экспортирован вместе с NameAttribute" OrderAttribute" MarginContainerAttribute" ContentTypeAttributeи TextViewRoleAttribute.

  7. При построении это решение копии сборки и манифеста, помещаются в экспериментальном каталог.

  8. Если запустить этот проект в отладчике, второй экземпляр Visual Studio создается. Если открыть текстовый файл, зеленые поля, имеющие машинных слова "hello world!" отображается под горизонтальной полосе прокрутки.

См. также

Основные понятия

Точки расширения редактора