3.2 将工具栏添加到工具窗口

将工具栏添加到工具窗口
Add a Toolbar to the Tool Window

Visual Studio 2015
 

若要了解有关 Visual Studio 2017 RC 的最新文档,请参阅 Visual Studio 2017 RC 文档

本演练演示如何将工具栏添加到工具窗口。

工具栏是一个包含绑定到命令的按钮的水平或垂直条。 工具窗口中工具栏的长度始终是相同的宽度或高度的工具窗口中,具体取决于工具栏的停靠位置。

与在 IDE 中的工具栏,不同的工具窗口中的工具栏必须可停靠和无法转移或自定义。 如果 VSPackage 在非代码中编写的可以在任何边缘停靠工具栏。

有关如何添加工具栏的详细信息,请参阅将工具栏添加

启动 Visual Studio 2015 中,您并不安装 Visual Studio SDK 从下载中心获得。 它将包括作为 Visual Studio 安装程序中的可选功能。 您还可以在以后安装 VS SDK。 有关详细信息,请参阅安装 Visual Studio SDK

  1. 创建一个名为的 VSIX 项目TWToolbar具有这两个菜单命令名为TWTestCommand和名为一个工具窗口TestToolWindow。 有关详细信息,请参阅使用菜单命令创建扩展使用一个工具窗口创建扩展。 您需要添加工具窗口模板之前,添加命令项模板。

  2. 在 TWTestCommandPackage.vsct,查找符号部分。 在名为 guidTWTestCommandPackageCmdSet GuidSymbol 节点声明一个工具栏和工具栏组,如下所示。

    XML
    <IDSymbol name="TWToolbar" value="0x1000" />  
    <IDSymbol name="TWToolbarGroup" value="0x1050" />  
    
    
  3. 在顶部Commands部分中,创建Menus部分。 添加Menu元素来定义工具栏。

    XML
    <Menus>  
        <Menu guid="guidTWTestCommandPackageCmdSet" id="TWToolbar" type="ToolWindowToolbar">  
            <CommandFlag>DefaultDocked</CommandFlag>  
            <Strings>  
                <ButtonText>Test Toolbar</ButtonText>  
                <CommandName>Test Toolbar</CommandName>  
            </Strings>  
        </Menu>  
    </Menus>  
    
    

    不能像子菜单嵌套工具栏。 因此,无需指定一个父级。 此外,您无需设置优先级,因为用户可以移动工具栏。 通常,工具栏的初始位置,以编程方式定义,但由用户的后续更改将永久保存。

  4. 在组部分中,定义一个组,包含工具栏命令。

    XML
    <Group guid="guidTWTestCommandPackageCmdSet" id="TWToolbarGroup" priority="0x0000">  
        <Parent guid="guidTWTestCommandPackageCmdSet" id="TWToolbar" />  
    </Group>  
    
    
  5. 在按钮部分中,将更改现有的 Button 元素的父级为工具栏组,以便将显示工具栏。

    XML
    <Button guid="guidTWTestCommandPackageCmdSet" id="TWTestCommandId" priority="0x0100" type="Button">  
        <Parent guid="guidTWTestCommandPackageCmdSet" id="TWToolbarGroup" />  
        <Icon guid="guidImages" id="bmpPic1" />  
        <Strings>  
            <ButtonText>Invoke TWTestCommand</ButtonText>  
        </Strings>  
    </Button>  
    
    

    默认情况下,如果工具栏不具有任何命令,则不会不显示。

    由于新的工具栏不会自动添加到工具窗口中,必须显式添加工具栏。 下一节中将对此进行讨论。

  1. TWTestCommandPackageGuids.cs 中添加以下行。

    C#
    public const string guidTWTestCommandPackageCmdSet = "00000000-0000-0000-0000-0000";  // get the GUID from the .vsct file  
    public const int TWToolbar = 0x1000;  
    
    
  2. 在 TestToolWindow.cs 中添加以下 using 语句。

    C#
    using System.ComponentModel.Design;  
    
    
  3. TestToolWindow 构造函数中添加以下行。

    C#
    this.ToolBar = new CommandID(new Guid(TWTestCommandPackageGuids.guidTWTestCommandPackageCmdSet), TWTestCommandPackageGuids.TWToolbar);  
    
    
  1. 生成项目并启动调试。 Visual Studio 实验实例应出现。

  2. 视图 / 其他窗口菜单上,单击测试工具窗口以显示工具窗口中。

    您应该看到左上角工具窗口正下方标题的顶部的工具栏 (它类似于默认图标)。

  3. 在工具栏上,单击图标以显示消息TWTestCommandPackage 内 TWToolbar.TWTestCommand.MenuItemCallback()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值