如何:创建自定义选项页

Visual Studio 2013 中已弃用 Visual Studio 的外接程序。 你应该升级外接程序到 VS 的扩展包。 有关升级的更多信息,请参见 。常见问题:将外接程序转换为 VSPackage 扩展

**“选项”**对话框可显示各种针对 Visual Studio 的不同部分的页面。 您可以控制现有的选项页(如 控制选项设置 所示),也可以创建自己的自定义页。 您可以使用自定义页,使用户能够更改外接程序或其他程序的设置。

要创建自己的自定义**“选项”页,您不必一定要使用外接程序,因为页定义存储在 XML 文件中,而不是存储在注册表项中。 因此,您可以创建可在 Visual Studio 集成开发环境 (IDE) 以及宏 IDE 中访问的“选项”**页。

下列步骤演示如何创建将用作自定义**“选项”**页的自定义用户控件,以及之后如何将 .addin 文件改为引用该控件。

备注

显示的对话框和菜单命令可能会与“帮助”中的描述不同,具体取决于您现用的设置或版本。这些过程是在“常规开发设置”处于活动状态时开发的。若要更改设置,请在“工具”菜单上单击“导入和导出设置”。有关详细信息,请参阅在 Visual Studio 中自定义开发设置

创建自定义“选项”页

  1. 创建一个 Windows 控件库项目。 将其命名为 ToolsOptionsLibrary.dll。

  2. 添加所需的控件和功能。

    此用户控件将成为自定义**“选项”页。 调整该控件的大小,以填充“选项”**对话框的工作区。

  3. 生成项目。

    Visual Studio 启动时会查找所有共享的 .addin 文件,并加载那些存在的 .addin 文件。 名为**“外接程序/宏的安全性”“选项”**页为 .addin 文件的文件路径定义了一组标记。 包括以下标记:

    • %ALLUSERSPROFILE%

    • %APPDATA%

    • %USERPROFILE%

    • %VSAPPDATA%

    • %VSCOMMONAPPDATA%

    Visual Studio 在开始搜索 .addin 文件时,会用以下路径字符串替换这些标记:

    标记

    路径

    %ALLUSERSPROFILE%

    ..\Documents and Settings\All Users\Application Data\Microsoft\MSEnvShared\Addins\(路径)

    %APPDATA%

    ..\Documents and Settings\username\Microsoft\MSEnvShared\Addins\(路径)

    %USERPROFILE%

    ..\Documents and Settings\username\My Documents\Visual Studio 2010\Addins\(路径)

    %VSAPPDATA%

    ..\Documents and Settings\username\Addins\(路径)

    %VSCOMMONAPPDATA%

    ..\Documents and Settings\All Users\Addins

    有关如何注册外接程序的更多信息,请参见外接程序安全性

  4. 在先前列出的某个目录中,创建一个 .addin 文件以引用新的**“选项”**页。

    可以将以下代码用作模板:

    <?xml version="1.0" encoding="UTF-16" standalone="no"?>
    <Extensibility xmlns="https://schemas.microsoft.com/AutomationExtensibility">
        <HostApplication>
            <Name>Microsoft Visual Studio Macros</Name>
            <Version>10.0</Version>
        </HostApplication>
        <HostApplication>
            <Name>Microsoft Visual Studio</Name>
            <Version>10.0</Version>
        </HostApplication>
        <ToolsOptionsPage>
            <Category Name="Environment">
                <SubCategory Name="My Tools Options Page">
                    <Assembly><dll location></Assembly>
                    <FullClassName>ToolsOptionsLibrary.UserControl1
                    </FullClassName>
                </SubCategory>
            </Category>
        </ToolsOptionsPage>
    </Extensibility>
    
  5. 在 <Assembly></Assembly> 标记中,使用 ToolsOptionsLibrary.dll 的路径替换 <dll location>。

  6. 更改 <ToolsOptionsPage> 设置以反映用户控件的具体信息,例如更改 Category Name(类别名称)、SubCategory Name(子类别名称)等。

    例如,如果用户控件名为“NewPage”,并且其对象为“MyTOLib”,则 FullClassName 标记应为 MyTOLib.NewPage。 Assembly(程序集)是“选项”页对应的 DLL 所在的位置。 Category Name(类别名称)是**“选项”**对话框中要放置自定义页的节点,例如 Environment(环境)、Debugging(调试)或 Projects(项目)。

    如果指定一个不存在的名称,则会创建一个具有该名称的节点。 SubCategory(子类别)是出现在该节点下方的名称。 请注意,最多只能有两个级别。 不能添加第三级节点。

  7. 将该文件作为文件扩展名为 .addin 的文本文件,保存到先前描述的外接程序文件的文件夹之一。 默认路径是 ..\Documents and Settings\username\Application Data\Microsoft\MSEnvShared\Addins\.

    在 Visual Studio 启动时,它会在该目录中查找自定义**“选项”页定义,并加载找到的此类页定义。 可以通过使用“选项”对话框中的“环境”节点下的“外接程序/宏的安全性”**页来更改或添加外接程序目录。

  8. 启动 Visual Studio,并单击**“工具”菜单上的“选项”**。

    将显示新的**“选项”**页。

请参见

任务

如何:更改窗口特性

概念

控制选项设置

外接程序注册

自动化对象模型图表

其他资源

创建和控制环境窗口

自动化与扩展性参考