ProvideProfileAttribute 构造函数

初始化 ProvideProfileAttribute 的新实例。

命名空间:  Microsoft.VisualStudio.Shell
程序集:  Microsoft.VisualStudio.Shell.11.0(在 Microsoft.VisualStudio.Shell.11.0.dll 中)

语法

声明
Public Sub New ( _
    objectType As Type, _
    categoryName As String, _
    objectName As String, _
    categoryResourceID As Short, _
    objectNameResourceID As Short, _
    isToolsOptionPage As Boolean _
)
public ProvideProfileAttribute(
    Type objectType,
    string categoryName,
    string objectName,
    short categoryResourceID,
    short objectNameResourceID,
    bool isToolsOptionPage
)

参数

  • objectType
    类型:System.Type
    实现 Visual Studio 设置的类的 Type 支持。
  • categoryName
    类型:System.String
    Visual Studio 设置类别的规范,非本地化名称。
  • objectName
    类型:System.String
    用于的规范,非本地化名称标识实现 Visual Studio 设置类别的对象。
  • categoryResourceID
    类型:System.Int16
    Visual Studio 设置类别的名称的本地化资源 ID。
  • objectNameResourceID
    类型:System.Int16
    用于的名称的本地化资源 ID 标识实现 Visual Studio 设置类别的对象。

备注

ProvideProfileAttribute 构造函数使用从 objectType 获取的 GUID 唯一标识自定义下落点的 Visual Studio 设置类别。

如果 isToolsOptionPage 是 true,还必须将ProvideOptionPageAttribute 于 VSPackage。

自定义 Points 在包含窗体 <CategoryName>_<ObjectName>的规范名称的注册表项中创建。

注册表项位于 \Software\Microsoft\VisualStudio HKLM \<Version>\UserSettings 下 <Version> 是 Visual Studio的版本,如 8.0。

在 <CategoryName>_<ObjectName>下的注册表项的形式为:

<CategoryName>_<ObjectName>

<CategoryName>_<ObjectName>\ @=#<ObjectNameResourceID>

<CategoryName>_<ObjectName>\Package =<Package>

<CategoryName>_<ObjectName>\Category =<ObjectTypeGuid>

<CategoryName>_<ObjectName>\AlternateParent =<CategoryName>

备注

上面的最后一项 (<CategoryName>_<ObjectName>\AlternateParent) 后,仅当 isToolsOptionPage 是 true。

示例

下面的示例演示提供 Visual Studio 设置,其中两类注册 (DesignerOptionsPage) 提供 工具选项 页的支持。 包和类别 GUID 由通过反射的属性中获得的。

自定义为名为 “DesignerOptionsPage”页下落点是:

MyDesigner_OptionPage

MyDesigner_OptionPage \ @=#1003

MyDesigner_OptionPage”}

MyDesigner_OptionPage \Category={"YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY”}

MyDesigner_OptionPage \AlternateParent =MyDesigner

备注

上面的最后一项, (UserSettings \MyDesigner_OptionPage\AlternateParent),存在,因为 isToolsOptionPage 是 true。

自定义为名为 “PersistCurrentDesign”页下落点是:

MyDesigner_CurrentDesign

MyDesigner_CurrentDesign\ @=#1005AMP_GT

MyDesigner_CurrentDesign”}

MyDesigner_CurrentDesign\Category={"ZZZZZZZZ-ZZZZ-ZZZZ-ZZZZ-ZZZZZZZZZZZZ”}AMP_GT

备注

非 (MyDesigner_ObjectNameAMP_GT\AlternateParent),因为 isToolsOptionPage 是 false。

下面的代码示例说明 DesignerOptionsPage 使用 ProvideProfileAttribute,如何注册。

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 PersisteDesignerState: IProfileManager {
//Implementation here

.NET Framework 安全性

请参见

参考

ProvideProfileAttribute 类

Microsoft.VisualStudio.Shell 命名空间

ProvideProfileAttribute

其他资源

用户设置和选项

保留的设置