ProvideLanguageEditorOptionPageAttribute Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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. |