Udostępnij za pośrednictwem


ProvideLanguageEditorOptionPageAttribute Klasa

Definicja

Podaj ogólną metodę ustawiania strony opcji narzędzia edytora usługi językowej.

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
Dziedziczenie
ProvideLanguageEditorOptionPageAttribute
Atrybuty

Przykłady

W tym przykładzie pokazano, jak ten atrybut zdefiniowany przez użytkownika jest używany do rejestrowania dwóch stron właściwości ("Ogólne" i "Wcięcie") oraz węzła strony właściwości ("Formatowanie"), który zawiera stronę właściwości "Wcięcie". Zwróć uwagę, jak drugi parametr konstruktora określa pozycję w rejestrze względem węzła.

Uwaga

Język Visual C# umożliwia skróconą postać atrybutu zdefiniowanego przez użytkownika przez usunięcie części "Atrybut" nazwy. Ten skrócony formularz jest używany w tym i wszystkich innych przykładach w tej klasie.

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

Uwagi

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

W obszarze EditorToolsOptions to drzewo stron i podstron, które mogą zagnieżdżać dowolną liczbę poziomów. Strony te odpowiadają stronom opcji wyświetlanym w Visual Studio Tools Opcje dla edytorów (gdzie drzewo stron opcji jest wyświetlane pod nazwą języka, każda strona zawierająca odpowiednie opcje).

Każdy klucz na tej liście stron opcji zawiera identyfikator zasobu lub ciąg literału zawierający zlokalizowaną nazwę strony. Jest to tak naprawdę wyświetlane w oknie dialogowym Opcje narzędzi. Ponadto zawiera również identyfikator GUID pakietu i opcjonalnie identyfikator GUID strony opcji.

Jeśli nie ma identyfikatora GUID strony opcji, klucz jest uznawany za węzeł w drzewie opcji i nie ma skojarzonej strony. W przeciwnym razie klucz jest liściem w drzewie, a jego strona opcji zostanie wyświetlona.

Może istnieć wiele wystąpień tego atrybutu, a każde wystąpienie określa węzeł lub stronę właściwości. Atrybuty mogą być wyświetlane w dowolnej kolejności. Jeśli określono identyfikator GUID strony właściwości, strona właściwości jest zarejestrowana, w przeciwnym razie jest to 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ługę językową w programie Visual Studio i określa, które funkcje są obsługiwane.
ProvideLanguageExtensionAttribute Kojarzy rozszerzenie pliku z usługą językową.
ProvideLanguageEditorOptionPageAttribute Określa węzeł właściwości lub stronę okna dialogowego Opcje specyficzne dla usługi językowej.
ProvideLanguageCodeExpansionAttribute Określa informacje o lokalizacji do obsługi fragmentów kodu w usłudze językowej.
ProvideServiceAttribute Rejestruje usługę językową jako usługę Visual Studio. Wszystkie usługi dostarczone w kodzie zarządzanym używają tego atrybutu.

Uwagi dotyczące dziedziczenia

Nie można dziedziczyć tej klasy atrybutu, więc nie ma nic do zaimplementowania.

Uwagi dotyczące wywoływania

Ta klasa atrybutu jest zwykle stosowana do podstawowej klasy VSPackage, chociaż może być wyświetlana w dowolnej klasie. Ta klasa atrybutów może pojawiać się wiele razy i w dowolnej kolejności, raz dla każdej strony właściwości i węzła w drzewie strony właściwości.

Konstruktory

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

Tworzy wystąpienie nowego wystąpienia elementu ProvideLanguageEditorOptionPageAttribute.

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

Tworzy wystąpienie nowego wystąpienia elementu ProvideLanguageEditorOptionPageAttribute.

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

Tworzy wystąpienie nowego wystąpienia elementu ProvideLanguageEditorOptionPageAttribute.

Właściwości

IsInUnifiedSettings

Pobiera lub ustawia wartość wskazującą, czy ustawienia na tej stronie zostały dołączone do ujednoliconych ustawień przez utworzenie nowej rejestracji. Jeśli to prawda, strona jest ukryta po włączeniu ujednoliconych ustawień, więc jej ustawienia nie są zduplikowane.

Keywords

Pobiera słowa kluczowe.

LanguageName

Pobiera nazwę języka.

PageGuid

Pobiera identyfikator GUID strony opcji.

PageNameResourceId

Pobiera identyfikator zasobu nazwy strony.

(Odziedziczone po ProvideOptionDialogPageAttribute)
PageType

Pobiera typ strony.

(Odziedziczone po ProvideOptionDialogPageAttribute)
TypeId

Zastąp właściwość TypeID, aby umożliwić klasom pochodnym RegistrationAttribute pracować z atrybutem System.ComponentModel.TypeDescriptor.GetAttributes(...). Atrybut pochodzący z tego atrybutu będzie musiał zastąpić tę właściwość tylko wtedy, gdy potrzebuje lepszej kontroli nad wystąpieniami, które można zastosować do klasy.

(Odziedziczone po RegistrationAttribute)

Metody

GetPackageRegKeyPath(Guid)

Pobiera ścieżkę rejestru (względem katalogu głównego rejestru aplikacji) pakietu VSPackage.

(Odziedziczone po RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Tworzy wszystkie klucze rejestru i wpisy określone przez konstruktora klasy.

Unregister(RegistrationAttribute+RegistrationContext)

Usuwa wszystkie klucze i wpisy rejestru.

Dotyczy