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 设置功能的默认实现,可以重写该功能。 如果(如示例中所示)应用于 VSPackage 实现, ProvideProfileAttribute 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  
}  

注解

实现者须知

ProvideOptionPageAttribute 应用于实现 VSPackage 的类。 此属性允许注册特定独立对象通过自定义 “工具选项” 页向 VSPackage 的用户提供配置访问权限。

特性上下文

适用于 VSPackage 允许通过通过托管包框架或使用 Visual Studio SDK 代码实现的DialogPage自定义“工具选项”页进行配置。
可重复
必需属性 DefaultRegistryRootAttribute
无效的特性

对调用者的说明

此属性仅用于注册目的,不会影响代码的运行时行为。

ProvideOptionPageAttribute 实现 IProfileManagerDialogPage 的给定类注册为提供特定的 VSPackage 支持,以便通过 Visual Studio 设置机制保留部分或全部 VSPackage 状态。 实现类保留的状态信息称为 Visual Studio 设置类别,其定义项在注册表中称为自定义设置点。

注意

加载基于托管包框架的自定义 “工具选项” 页时,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

获取或设置一个值,该值指示此页面的 UI 是否显示通过使用 ISettingsManager3 或具有类似功能的 API 在连接的客户端-服务器方案中与服务器同步的设置。

Keywords

获取此选项页的可搜索关键字。 每个关键字 (keyword) 可以是文本字符串、 (前缀为“@”/“#”的资源名称/ID ) 指向单个关键字 (keyword) ,或者 (前缀为“@”/“#”的资源名称/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

对于 = IsInUnifiedSettings false 的页面,获取或设置统一设置层次结构中父类别的名字对象。 这可以是已存在的名字对象,也可以是存在的名字对象加上一个附加的“.”。-delimited 段。 如果为后者,则会在统一设置层次结构中创建名为 CategoryResourceID 的新类别,并在其中插入此页面。 否则,此页面将插入到现有类别下。

VisibilityCmdUIContexts

以分号分隔的 UIContext GUID 列表。 当列表中的任何 UIContext 处于活动状态时,选项页可见。 如果未指定此选项,则选项页始终可见。

方法

GetPackageRegKeyPath(Guid)

获取相对于 VSPackage 的应用程序) 注册表根目录 (注册表路径。

(继承自 RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

注册“工具选项”页。

Unregister(RegistrationAttribute+RegistrationContext)

从注册表中删除“工具选项”页键。

适用于