2

在 Visual Studio 扩展中,我在 .vsct 文件中定义了一个工具栏:

      <Menu guid="guidVsCmdSet" id="MyToolbar" type="Toolbar" >
        <CommandFlag>TextChanges</CommandFlag>
        <CommandFlag>DefaultDocked</CommandFlag>      
        <Strings>
          <ButtonText>My Tools/ButtonText>
        </Strings>
      </Menu>

当我在 Visual Studio Experimental hive 中启动我的扩展时,我可以通过右键单击命令栏区域来手动打开我的工具栏。

当我第一次运行扩展程序时,有什么方法可以让工具栏默认显示?

我尝试了其他几个 CommandFlags,但它们似乎没有执行此行为:

    <CommandFlag>AlwaysCreate</CommandFlag>
    <CommandFlag>DontCache</CommandFlag>   
4

2 回答 2

3

您要查看的是可见性约束。下面的示例使用 GUID_TextEditorFactory 使其在文本编辑器处于活动状态时可见(并在例如设计器处于活动状态时隐藏)。

我不是 100% 确定正确的上下文是什么让它始终可见,但我的猜测是 UICONTEXT_NoSolution(或者可能是 GUID_VSStandardCommandSet97)。

<CommandTable>
    <Commands.../>
    <VisibilityConstraints>
        <VisibilityItem guid="guidVsCmdSet" id="MyToolbar" context="GUID_TextEditorFactory" />
    </VisibilityConstraints>
</CommandTable>
于 2012-06-16T10:46:26.447 回答
1

在此解决方法中了解如何执行此操作:LVN!边栏 #7 - 在 Visual Studio 启动时显示工具栏

于 2012-06-17T20:22:30.863 回答