Freigeben über


ProvideLanguageEditorOptionPageAttribute Klasse

Definition

Stellen eine allgemeine Methode zum Festlegen einer Editortooloptionsseite des Sprachdiensts bereit.

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
Vererbung
ProvideLanguageEditorOptionPageAttribute
Attribute

Beispiele

In diesem Beispiel wird gezeigt, wie dieses benutzerdefinierte Attribut verwendet wird, um zwei Eigenschaftenseiten ("Allgemein" und "Einzug") und einen Eigenschaftenseitenknoten ("Formatierung") zu registrieren, der die Eigenschaftenseite "Einzug" enthält. Beachten Sie, dass der zweite Parameter für den Konstruktor die Position in der Registrierung relativ zum Knoten angibt.

Hinweis

Visual C# ermöglicht die Kurzform eines benutzerdefinierten Attributs, indem der Teil des Namens "Attribut" gelöscht wird. Diese Kurzform wird in diesem und allen anderen Beispielen in dieser Klasse verwendet.

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

Hinweise

Diese Informationen werden im Registrierungsschlüssel <RegistrationRoot>\Languages\Language Services\[language]\EditorToolsOptions gespeichert, wobei [language] der Name der Sprache ist.

Unter EditorToolsOptions befindet sich eine Struktur von Seiten und Unterseiten, die eine beliebige Anzahl von Ebenen verschachteln können. Diese Seiten entsprechen den Optionsseiten, die im Visual Studio-Tools Optionen für Editoren angezeigt werden (wobei eine Struktur von Optionsseiten unter dem Sprachnamen angezeigt wird, wobei jede Seite die entsprechenden Optionen enthält).

Jeder Schlüssel in dieser Optionsseitenliste enthält eine Ressourcen-ID oder literale Zeichenfolge, die den lokalisierten Namen der Seite enthält. Dies wird im Dialogfeld Extras-Optionen angezeigt. Darüber hinaus enthält es auch eine Paket-GUID und optional eine GUID einer Optionsseite.

Wenn keine Optionsseiten-GUID vorhanden ist, wird der Schlüssel als Knoten in der Struktur der Optionen betrachtet und weist keine zugeordnete Seite auf. Andernfalls ist der Schlüssel ein Blatt in der Struktur, und seine Optionsseite wird angezeigt.

Es kann mehrere Instanzen dieses Attributs geben, und jede instance gibt einen Knoten oder eine Eigenschaftenseite an. Die Attribute können in beliebiger Reihenfolge angezeigt werden. Wenn die Eigenschaftenseiten-GUID angegeben wird, wird eine Eigenschaftenseite registriert, andernfalls ist es ein Knoten, der registriert ist.

Die folgenden benutzerdefinierten Attribute werden für Sprachdienste verwendet:

attribute BESCHREIBUNG
ProvideLanguageServiceAttribute Registriert den Sprachdienst bei Visual Studio und gibt an, welche Features unterstützt werden.
ProvideLanguageExtensionAttribute Ordnet dem Sprachdienst eine Dateierweiterung zu.
ProvideLanguageEditorOptionPageAttribute Gibt einen Eigenschaftenknoten oder eine Seite für das Dialogfeld Optionen an, das für den Sprachdienst spezifisch ist.
ProvideLanguageCodeExpansionAttribute Gibt Standortinformationen an, um Codeausschnitte im Sprachdienst zu unterstützen.
ProvideServiceAttribute Registriert einen Sprachdienst als Visual Studio-Dienst. Alle Dienste, die in verwaltetem Code bereitgestellt werden, verwenden dieses Attribut.

Hinweise für Vererber

Diese Attributklasse kann nicht von geerbt werden, sodass nichts implementiert werden muss.

Hinweise für Aufrufer

Diese Attributklasse wird in der Regel auf Ihre primäre VSPackage-Klasse angewendet, obwohl sie in jeder Klasse angezeigt werden kann. Diese Attributklasse kann mehrmals und in beliebiger Reihenfolge für jede Eigenschaftenseite und jeden Knoten in der Eigenschaftenseitenstruktur einmal angezeigt werden.

Konstruktoren

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

Instanziiert eine neue instance von ProvideLanguageEditorOptionPageAttribute.

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

Instanziiert eine neue instance von ProvideLanguageEditorOptionPageAttribute.

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

Instanziiert eine neue instance von ProvideLanguageEditorOptionPageAttribute.

Eigenschaften

IsInUnifiedSettings

Ruft einen Wert ab, der angibt, ob die Einstellungen auf dieser Seite durch die Erstellung einer neuen Registrierung in einheitliche Einstellungen integriert wurden, oder legt diesen fest. Wenn true, wird die Seite ausgeblendet, wenn einheitliche Einstellungen aktiviert sind, sodass ihre Einstellungen nicht dupliziert werden.

Keywords

Ruft die Schlüsselwörter ab.

LanguageName

Ruft den Namen der Sprache ab.

PageGuid

Ruft die GUID der Optionsseite ab.

PageNameResourceId

Ruft die Namenressourcen-ID der Seite ab.

(Geerbt von ProvideOptionDialogPageAttribute)
PageType

Ruft den Typ der Seite ab.

(Geerbt von ProvideOptionDialogPageAttribute)
TypeId

Überschreiben Sie die TypeID-Eigenschaft, damit die abgeleiteten RegistrationAttribute-Klassen mit System.ComponentModel.TypeDescriptor.GetAttributes(...) arbeiten können. Ein von diesem abgeleitetes Attribut muss diese Eigenschaft nur überschreiben, wenn es eine bessere Steuerung für die Instanzen benötigt, die auf eine Klasse angewendet werden können.

(Geerbt von RegistrationAttribute)

Methoden

GetPackageRegKeyPath(Guid)

Ruft den Registrierungspfad (relativ zum Registrierungsstamm der Anwendung) des VSPackages ab.

(Geerbt von RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Erstellt alle Registrierungsschlüssel und Einträge, wie vom Klassenkonstruktor angegeben.

Unregister(RegistrationAttribute+RegistrationContext)

Entfernt alle Registrierungsschlüssel und -einträge.

Gilt für: