ProvideOptionPageAttribute クラス

定義

この属性を独立したオブジェクトに適用して、ユーザーがカスタムの [ツール オプション] ページを使用して VSPackage を構成できるようにします。

public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
public ref class ProvideOptionPageAttribute sealed : Microsoft::VisualStudio::Shell::ProvideOptionDialogPageAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideOptionPageAttribute : Microsoft.VisualStudio.Shell.ProvideOptionDialogPageAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideOptionPageAttribute = class
    inherit ProvideOptionDialogPageAttribute
Public NotInheritable Class ProvideOptionPageAttribute
Inherits ProvideOptionDialogPageAttribute
継承
属性

次の例では、 のProvideOptionPageAttributeインスタンスが VSPackage 実装に適用され、 から派生した DialogPageクラス DesignerOptionsPageを登録し、VSPackage に [ツール オプション] ページを提供しています。

から DialogPage 派生したクラスには、オーバーライドできる Visual Studio 設定機能の既定の実装が用意されています。 例のように ProvideProfileAttribute 、VSPackage 実装に適用されている場合、IDE はこの Visual Studio 設定のサポートを利用します。 Visual Studio 設定のサポートの詳細については、「 ユーザー設定とオプションの拡張」を参照してください。

using Microsoft.VisualStudio.Shell;  
namespace Example  
{  
[DefaultRegistryRoot("Software\\Microsoft\\VisualStudio\\8.0")]   
[ProvideOptionPage(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1000, 1001, true)]   
[ProvideProfileAttribute(typeof(DesignerOptionsPage), "MyDesigner", "OptionPage", 1002, 1003, true)]  
[ProvideProfileAttribute(typeof(PersistCurrentDesign), "MyDesigner","CurrentDesign", 1004, 1005, false)]  
[Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")]  
public class MyPackage : Package  
{  
//Implementation here  
}  

[Guid("YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY")]  
internal class DesignerOptionsPage: DialogPage {  
//Implementation here  
}  

[Guid("ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ")]  
internal class PersistCurrentDesign: IProfileManager {  
//Implementation here  
}  

注釈

実装側の注意

VSPackage を ProvideOptionPageAttribute 実装するクラスに を適用します。 この属性を使用すると、特定の独立したオブジェクトが、カスタム の [ツール オプション] ページを使用して VSPackage のユーザーに構成アクセスを提供することを登録できます。

属性コンテキスト

適用対象 VSPackage では、マネージド パッケージ フレームワークDialogPageを介して実装されたカスタム ツール オプション ページを使用するか、Visual Studio SDK コードを使用して構成できます。
反復可能 Yes
必須属性 DefaultRegistryRootAttribute
無効な属性 なし

呼び出し元に関する注意事項

この属性は登録目的でのみ使用され、コードの実行時の動作には影響しません。

ProvideOptionPageAttribute、Visual Studio 設定メカニズムを使用して VSPackage の状態の一部またはすべてを永続化するための特定の VSPackage サポートを提供する、 または DialogPage を実装IProfileManagerする特定のクラスを登録します。 実装クラスによって永続化される状態情報は Visual Studio 設定カテゴリと呼ばれ、レジストリ内の定義エントリはカスタム設定ポイントと呼ばれます。

注意

Managed Package Framework ベースのカスタム ツール オプション ページが読み込まれると、IDE によって、実装としてによって ProvideOptionPageAttribute 登録されたオブジェクトがインスタンス化されます。 マネージド パッケージ フレームワーク ツール オプション ページのサポートは、VSPackage 自体ではなく、独自のオブジェクトに実装する必要があります。

のインスタンスの作成と適用の ProvideOptionPageAttribute詳細については、次 ProvideOptionPageAttributeの および の例を参照してください。

コンストラクター

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, Int32)

ProvideOptionPageAttribute の新しいインスタンスをインスタンス化します。

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String)

ProvideOptionPageAttribute の新しいインスタンスをインスタンス化します。

ProvideOptionPageAttribute(Type, String, String, Int16, Int16, Boolean, String[])

ProvideOptionPageAttribute の新しいインスタンスをインスタンス化します。

プロパティ

CategoryDescriptionResourceId

ページの親カテゴリのローカライズされた説明を含むリソースの ID。 このプロパティは、SupportsAutomation == true および SupportsProfiles == true の場合にのみ使用されます。 ローカライズされた説明は、インポート/エクスポート設定ウィザードに表示されます。

CategoryName

[ツール オプション] ページのカテゴリの標準の非ローカライズ名を取得します。

CategoryPackageGuid

このページが登録されているカテゴリを所有するパッケージの ID。 これが設定されていない場合、パッケージはこの属性が適用されるパッケージであると見なされます。 このプロパティは、SupportsAutomation == true および SupportsProfiles == true の場合にのみ使用されます。 Guid.ToString("B") を使用して Guid からこれを生成します。

CategoryResourceID

[ツール オプション] ページのカテゴリ リソース ID を取得します。

DescriptionResourceId

ページのローカライズされた説明を含むリソースの ID。 このプロパティは、SupportsAutomation == true および SupportsProfiles == true の場合にのみ使用されます。 ローカライズされた説明は、インポート/エクスポート設定ウィザードに表示されます。

IsInUnifiedSettings

このページの設定が新しい登録の作成によって統合設定にオンボードされているかどうかを示す値を取得または設定します。 true の場合、統合設定が有効になっている場合、ページは非表示になるため、その設定は重複しません。

IsServerAware

ISettingsManager3 または同様の機能を持つ API を使用して、接続されたクライアント サーバー シナリオでサーバーと同期される設定をこのページの UI に表示するかどうかを示す値を取得または設定します。

Keywords

このオプション ページの検索可能なキーワードを取得します。 各キーワード (keyword)には、リテラル文字列、単一のキーワード (keyword)を指すリソース名/ID (プレフィックスは "@"/"#")、セミコロンで区切られたキーワードの一覧を指すリソース名/ID (プレフィックスは "@"/"#") を指定できます。

NoShowAllView

集計された [ツール オプション] ページを表示するかどうかを取得または設定します。

PageName

[ツール オプション] ページの標準の非ローカライズ名を取得します。

PageNameResourceId

ページの名前リソース ID を取得します。

(継承元 ProvideOptionDialogPageAttribute)
PageType

ページの種類を取得します。

(継承元 ProvideOptionDialogPageAttribute)
ProfileMigrationType

プロファイルの移行の種類を設定します。

ProvidesLocalizedCategoryName

パッケージにカテゴリ名のローカライズされたリソースがあるかどうかを判断します。

Sort

オプション ページの並べ替え順序。 オプション ページは、次の順序で照合されます。

1.  The General page
2.  Pages with a Sort value, sorted from low to high.
3.  Pages without a Sort value, sorted alphabetically.
SupportsAutomation

[ツール オプション] ページの実装でオートメーションがサポートされているかどうかを取得します。

SupportsProfiles

[ツール オプション] ページの実装で Visual Studio 設定メカニズムを使用してその状態を保持するかどうかを取得または設定します。

TypeId

の現在のインスタンスを ProvideOptionPageAttribute取得します。

UnifiedSettingsCategoryMoniker

= false のページ IsInUnifiedSettings の場合、統合設定階層の親カテゴリのモニカーを取得または設定します。 これは、既に存在するモニカー、または存在するモニカーに 1 つ追加の '.' を加えたものにすることができます。-delimited segment。 後者の場合は、 という CategoryResourceID 名前の新しいカテゴリが統合設定階層に作成され、このページが挿入されます。 それ以外の場合、このページは既存のカテゴリの下に挿入されます。

VisibilityCmdUIContexts

UIContext GUID のセミコロン区切りリスト。 オプション ページは、リスト内の UIContext がアクティブな場合に表示されます。 これが指定されていない場合、オプション ページは常に表示されます。

メソッド

GetPackageRegKeyPath(Guid)

VSPackage のレジストリ パス (アプリケーションのレジストリ ルートに対する相対パス) を取得します。

(継承元 RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

[ツール オプション] ページを登録します。

Unregister(RegistrationAttribute+RegistrationContext)

レジストリから [ツール オプション] ページ キーを削除します。

適用対象