共用方式為


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
屬性

範例

這個範例示範如何使用這個使用者定義的屬性來註冊兩個屬性頁, (「一般」和「縮排」) ,以及包含 「Indent」 屬性頁的屬性頁節點 (「格式化」) 。 請注意建構函式的第二個參數如何指定相對於節點的登錄位置。

注意

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\[language]\EditorToolsOptions 中,其中 [language] 是語言的名稱。

在EditorToolsOptions下,是頁面和子頁面的樹狀結構,可巢狀任意數目的層級。 這些頁面會對應至編輯器 Visual Studio Tools [選項] 中所顯示的選項頁面, (其中選項頁面樹狀結構會顯示在語言名稱下,每個包含適當選項的頁面) 。

這個選項頁面清單中的每個索引鍵都包含資源識別碼或常值字串,其中包含頁面的當地語系化名稱。 這是 [工具選項] 對話框中實際顯示的內容。 此外,它也包含封裝 GUID,以及選擇性地包含選項頁面的 GUID。

如果沒有選項頁面 GUID,則會將索引鍵視為選項樹狀結構中的節點,而且沒有相關聯的頁面。 否則,索引鍵是樹狀結構中的分葉,而且會顯示其選項頁面。

這個屬性可以有多個實例,而每個實例都會指定節點或屬性頁。 屬性可以依任何順序顯示。 如果指定屬性頁 GUID,則會註冊屬性頁,否則為已註冊的節點。

下列使用者定義的屬性會用於語言服務:

屬性 Description
ProvideLanguageServiceAttribute 向 Visual Studio 註冊語言服務,並指定支援哪些功能。
ProvideLanguageExtensionAttribute 將擴展名與語言服務產生關聯。
ProvideLanguageEditorOptionPageAttribute 指定語言服務專屬之 [選項] 對話框的屬性節點或頁面。
ProvideLanguageCodeExpansionAttribute 指定支援語言服務代碼段的位置資訊。
ProvideServiceAttribute 將語言服務註冊為 Visual Studio 服務。 Managed 程式代碼中提供的所有服務都會使用這個屬性。

給繼承者的注意事項

這個屬性類別無法繼承自 ,因此不會實作任何專案。

給呼叫者的注意事項

這個屬性類別通常會套用至您的主要 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)

拿掉所有登錄機碼和專案。

適用於