Udostępnij za pośrednictwem


Klasa ProvideLanguageEditorOptionPageAttribute

Zapewniają ogólną metodę ustawiania służbie językowej edytora narzędzie opcji strony.

Hierarchia dziedziczenia

System.Object
  System.Attribute
    Microsoft.VisualStudio.Shell.RegistrationAttribute
      Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
        Microsoft.VisualStudio.Shell.ProvideLanguageEditorOptionPageAttribute

Przestrzeń nazw:  Microsoft.VisualStudio.Shell
Zestaw:  Microsoft.VisualStudio.Shell.11.0 (w Microsoft.VisualStudio.Shell.11.0.dll)

Składnia

'Deklaracja
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True, Inherited := True)> _
Public NotInheritable Class ProvideLanguageEditorOptionPageAttribute _
    Inherits ProvideOptionDialogPageAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true, Inherited = true)]
public sealed class ProvideLanguageEditorOptionPageAttribute : ProvideOptionDialogPageAttribute

Typ ProvideLanguageEditorOptionPageAttribute uwidacznia następujące elementy członkowskie.

Konstruktorzy

  Nazwa Opis
Metoda publiczna ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String) Inicjuje nowe wystąpienie ProvideLanguageEditorOptionPageAttribute na określonej stronie.
Metoda publiczna ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, Int32)
Metoda publiczna ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, String)
Metoda publiczna ProvideLanguageEditorOptionPageAttribute(Type, String, String, String, String, array<String[])

Początek

Właściwości

  Nazwa Opis
Właściwość publiczna Keywords
Właściwość publiczna LanguageName Pobiera nazwę języka.
Właściwość publiczna PageGuid Pobiera identyfikator GUID stronie opcji.
Właściwość publiczna PageNameResourceId Pobiera identyfikator zasobu nazwy strony. (Odziedziczone z ProvideOptionDialogPageAttribute).
Właściwość publiczna PageType Pobiera typu strony. (Odziedziczone z ProvideOptionDialogPageAttribute).
Właściwość publiczna TypeId Pobiera bieżące wystąpienie tego atrybutu. (Odziedziczone z RegistrationAttribute).

Początek

Metody

  Nazwa Opis
Metoda publiczna Equals Infrastruktura. Zwraca wartość, która wskazuje, czy to wystąpienie jest równa określonego obiektu. (Odziedziczone z Attribute).
Metoda publiczna GetHashCode Zwraca kod skrótu dla tego wystąpienia. (Odziedziczone z Attribute).
Metoda publiczna GetType Pobiera Type bieżącej instancji. (Odziedziczone z Object).
Metoda publiczna IsDefaultAttribute Gdy zastąpiony w klasie pochodnej, wskazuje, czy wartość to wystąpienie jest wartością domyślną dla klasy pochodnej. (Odziedziczone z Attribute).
Metoda publiczna Match Gdy zastąpiony w klasie pochodnej, zwraca wartość wskazującą, czy to wystąpienie jest równa określonego obiektu. (Odziedziczone z Attribute).
Metoda publiczna Register Tworzy klucze rejestru i wpisy podaną przez konstruktora klasy. (Zastępuje RegistrationAttribute.Register(RegistrationAttribute.RegistrationContext)).
Metoda publiczna ToString Zwraca ciąg, który reprezentuje bieżącego obiektu. (Odziedziczone z Object).
Metoda publiczna Unregister Usuwa wszystkie klucze rejestru i wpisy. (Zastępuje RegistrationAttribute.Unregister(RegistrationAttribute.RegistrationContext)).

Początek

Jawne implementacje interfejsu

  Nazwa Opis
Jawna implementacja interfejsuMetoda prywatna _Attribute.GetIDsOfNames Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłki. (Odziedziczone z Attribute).
Jawna implementacja interfejsuMetoda prywatna _Attribute.GetTypeInfo Pobiera informacje o typie dla obiektu, który można uzyskać informacji o typie dla interfejsu. (Odziedziczone z Attribute).
Jawna implementacja interfejsuMetoda prywatna _Attribute.GetTypeInfoCount Pobiera numer typu informacji interfejsów, że obiekt zawiera (0 lub 1). (Odziedziczone z Attribute).
Jawna implementacja interfejsuMetoda prywatna _Attribute.Invoke Zapewnia dostęp do właściwości i metod udostępnianych przez obiekt. (Odziedziczone z Attribute).

Początek

Uwagi

Te informacje są przechowywane w \EditorToolsOptions \Languages\Language Services\ [język] <RegistrationRoot> klucza rejestru, gdzie [język] jest nazwa języka.

W obszarze EditorToolsOptions jest drzewo stron i znajdziesz tu, które można zagnieździć dowolną liczbę poziomów.Strony te odpowiadają opcje strony wyświetlane w narzędziach Visual Studio opcje dla edytorów (gdzie drzewo opcji strony jest wyświetlany w obszarze Nazwa języka, każdej strony zawierające odpowiednie opcje).

Każdy klucz na tej liście strony opcji zawiera identyfikator zasobu lub literału ciąg zawierający zlokalizowaną nazwę strony.Jest to, co faktycznie znajduje się w oknie dialogowym Opcje narzędzia.Ponadto, także zawiera pakiet GUID i opcjonalnie identyfikatora GUID na stronie opcji.

Jeśli strona nie opcji identyfikator GUID klucz uważana jest za węzeł w drzewie opcje i nie ma skojarzonego strony.W przeciwnym razie klucz jest liściem w drzewie i jego opcji Strona zostanie wyświetlona.

Może istnieć wiele wystąpień tego atrybutu, a każde wystąpienie określa węzeł lub strona właściwości.Atrybuty mogą pojawiać się w dowolnej kolejności.Jeśli strona właściwości podano identyfikator GUID, a następnie strona właściwości jest zarejestrowany, w przeciwnym razie jest węzeł, który jest zarejestrowany.

Następujące atrybuty zdefiniowane przez użytkownika są używane dla usług językowych:

Atrybut

Opis

ProvideLanguageServiceAttribute

Rejestruje usługi języka z Visual Studio i określa, jakie funkcje są obsługiwane.

ProvideLanguageExtensionAttribute

Kojarzy rozszerzenie pliku z usługi języka.

ProvideLanguageEditorOptionPageAttribute

Określa właściwość węzła lub strony w oknie dialogowym Opcje specyficzne dla usługi języka.

ProvideLanguageCodeExpansionAttribute

Określa informacje o lokalizacji, do obsługi wstawki kodu programu w służbie językowej.

ProvideServiceAttribute

Rejestruje służbie językowej jako Visual Studio usługi.Wszystkie usługi świadczone w użyciu kodu zarządzanego ten atrybut.

Uwagi dotyczące implementacji

Ten atrybut klasy nie może być dziedziczona z, więc nie ma nic do wprowadzenia w życie.

Uwagi dotyczące wywoływania

Ten atrybut klasy jest typowo stosowany do podstawowej klasy VSPackage, chociaż może być wyświetlany na każdej klasy.Ten atrybut klasy mogą pojawiać się wielokrotnie i w dowolnej kolejności, tylko jeden raz dla każdej właściwości strony, a węzeł w drzewie strony właściwości.

Przykłady

Ten przykład pokazuje, jak ten atrybut zdefiniowane przez użytkownika jest używane do rejestracji dwóch stron właściwości ("Ogólne" i "Tiret") i węzeł strony właściwości ("formatowanie"), który zawiera strony właściwości "Tiret".Należy zwrócić uwagę, jak drugi parametr do konstruktora określa położenie w rejestrze w stosunku do węzła.

[!UWAGA]

Visual C#pozwala na formularzu skróconym atrybutu user-defined przez upuszczenie "Atrybutu" część nazwy.Tego formularza skróconego jest używany w tym i innymi przykładami całej tej klasy.

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
    {
    }
}

Bezpieczeństwo wątku

Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.

Zobacz też

Informacje

Przestrzeń nazw Microsoft.VisualStudio.Shell