ProvideLanguageEditorOptionPageAttribute Класс

Определение

Предоставьте общий метод для настройки страницы параметров редактора языковой службы.

public ref class ProvideLanguageEditorOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
public ref class ProvideLanguageEditorOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideLanguageEditorOptionPageAttribute : Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideLanguageEditorOptionPageAttribute = class
    inherit ProvideOptionDialogPageAttribute
Public NotInheritable Class ProvideLanguageEditorOptionPageAttribute
Inherits ProvideOptionDialogPageAttribute
Наследование
ProvideLanguageEditorOptionPageAttribute
Атрибуты

Примеры

В этом примере показано, как этот пользовательский атрибут используется для регистрации двух страниц свойств ("Общие" и "Отступ") и узла страницы свойств ("Форматирование"), содержащего страницу свойств "Отступ". Обратите внимание, что второй параметр конструктора указывает положение в реестре относительно узла.

Примечание

Visual C# позволяет использовать сокращенную форму определяемого пользователем атрибута путем удаления части "Атрибут" в имени. Эта сокращенная форма используется в этом и во всех других примерах этого класса.

using Microsoft.VisualStudio.Shell;  

namespace MyLanguagePackage  
{  
    internal class MyConstants  
    {  
        public const string languageName                = "MyLanguage";  
        public const string formattingNodeResIDAsString = "#108";  
        public const string generalPageResIDAsString    = "#109";  
        public const string indentPageResIDAsString     = "#110";  
    }  

    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     "General",  // property page  
                                     MyConstants.generalPageResIDAsString,  
        // Optional language service properties  
        OptionPageGuid = "{12434534-cecd-48e7-a866-45cad2e8b169}"  
                                    )]  
    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     "Formatting",  // property node  
                                     MyConstants.formattingNodeResIDAsString  
                                    )]  
    [ProvideLanguageEditorOptionPage(MyConstants.languageName,  
                                     @"Formatting\Indent",  // property page  
                                     MyConstants.indentPageResIDAsString,  
        // Optional language service properties  
        OptionPageGuid = "{12434556-cecd-48e7-a866-45cad2e8b169}"  
                                    )]  

    class MyLanguagePackage  
    {  
    }  
}  

Комментарии

Эти сведения хранятся в разделе <реестра RegistrationRoot>\Languages\Language Services\[язык]\EditorToolsOptions, где [language] — это имя языка.

В разделе EditorToolsOptions — это дерево страниц и вложенных страниц, которые могут вложить любое количество уровней. Эти страницы соответствуют страницам параметров, отображаемым в Инструменты Visual Studio Параметры для редакторов (где под названием языка отображается дерево страниц параметров, каждая страница содержит соответствующие параметры).

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

Если guid страницы параметра отсутствует, ключ считается узлом в дереве параметров и не имеет связанной страницы. В противном случае ключ является листом в дереве, и будет показана его страница параметров.

Существует несколько экземпляров этого атрибута, и каждый экземпляр указывает узел или страницу свойств. Атрибуты могут отображаться в любом порядке. Если указан GUID страницы свойств, то страница свойств регистрируется, в противном случае это узел, который регистрируется.

Для языковых служб используются следующие определяемые пользователем атрибуты:

attribute Описание
ProvideLanguageServiceAttribute Регистрирует языковую службу в Visual Studio и указывает, какие функции поддерживаются.
ProvideLanguageExtensionAttribute Связывает расширение файла с языковой службой.
ProvideLanguageEditorOptionPageAttribute Указывает узел свойств или страницу для диалогового окна Параметры, относяскогося к языковой службе.
ProvideLanguageCodeExpansionAttribute Указывает сведения о расположении для поддержки фрагментов кода в языковой службе.
ProvideServiceAttribute Регистрирует языковую службу в качестве службы Visual Studio. Все службы, предоставляемые в управляемом коде, используют этот атрибут.

Примечания для тех, кто наследует этот метод

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

Примечания для тех, кто вызывает этот метод

Этот класс атрибутов обычно применяется к основному классу VSPackage, хотя он может отображаться в любом классе. Этот класс атрибута может отображаться несколько раз и в любом порядке, по одному разу для каждой страницы свойств и узла в дереве страниц свойств.

Конструкторы

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, Int32)

Создает новый экземпляр ProvideLanguageEditorOptionPageAttribute.

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, String)

Создает новый экземпляр ProvideLanguageEditorOptionPageAttribute.

ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, String[])

Создает новый экземпляр ProvideLanguageEditorOptionPageAttribute.

Свойства

IsInUnifiedSettings

Возвращает или задает значение, указывающее, были ли параметры на этой странице подключены к унифицированным параметрам путем создания новой регистрации. Если задано значение true, страница скрыта, когда включены единые параметры, поэтому ее параметры не дублируются.

Keywords

Возвращает ключевые слова.

LanguageName

Получает имя языка.

PageGuid

Получает GUID страницы параметра.

PageNameResourceId

Получает идентификатор ресурса имени страницы.

(Унаследовано от ProvideOptionDialogPageAttribute)
PageType

Получает тип страницы.

(Унаследовано от ProvideOptionDialogPageAttribute)
TypeId

Переопределите свойство TypeID, чтобы разрешить производным классам RegistrationAttribute работать с System.ComponentModel.TypeDescriptor.GetAttributes(...). Атрибут, производный от этого, должен переопределять это свойство только в том случае, если ему требуется более эффективное управление экземплярами, которые можно применить к классу.

(Унаследовано от RegistrationAttribute)

Методы

GetPackageRegKeyPath(Guid)

Получает путь в реестре (относительно корня реестра приложения) VSPackage.

(Унаследовано от RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Создает все разделы реестра и записи, определенные конструктором класса.

Unregister(RegistrationAttribute+RegistrationContext)

Удаляет все разделы реестра и записи.

Применяется к