Agregar una barra de herramientas
En este tutorial se muestra cómo agregar una barra de herramientas al IDE de Visual Studio.
Una barra de herramientas es una franja horizontal o vertical que contiene botones enlazados a comandos. En función de su implementación, se puede cambiar la posición de una barra de herramientas del IDE, acoplarse en cualquier lado de la ventana principal del IDE o hacer que permanezca delante de otras ventanas.
Además, los usuarios pueden agregar comandos a una barra de herramientas o quitarlos de ella mediante el cuadro de diálogo Personalizar . Normalmente, las barras de herramientas de VSPackages son personalizables por el usuario. El IDE controla toda la personalización y VSPackage responde a los comandos. VSPackage no tiene que saber dónde se encuentra físicamente un comando.
Para obtener más información sobre los menús, vea Comandos, menús y barras de herramientas.
Creación de una extensión con una barra de herramientas
Cree un proyecto VSIX denominado IDEToolbar
. Agregue una plantilla de elemento de comando de menú denominada ToolbarTestCommand. Para obtener información sobre cómo hacerlo, vea Crear una extensión con un comando de menú.
Creación de una barra de herramientas para el IDE
En ToolbarTestCommandPackage.vsct, busque la sección Símbolos. En el elemento GuidSymbol denominado guidToolbarTestCommandPackageCmdSet, agregue declaraciones para una barra de herramientas y un grupo de barras de herramientas, como se indica a continuación.
<IDSymbol name="Toolbar" value="0x1000" /> <IDSymbol name="ToolbarGroup" value="0x1050" />
En la parte superior de la sección Comandos, cree una sección Menús. Agregue un elemento Menu a la sección Menús para definir la barra de herramientas.
<Menus> <Menu guid="guidToolbarTestCommandPackageCmdSet" id="Toolbar" type="Toolbar"> <CommandFlag>DefaultDocked</CommandFlag> <Strings> <ButtonText>Test Toolbar</ButtonText> <CommandName>Test Toolbar</CommandName> </Strings> </Menu> </Menus>
Las barras de herramientas no se pueden anidar como submenús. Por lo tanto, no es necesario asignar un grupo primario. Además, no es necesario establecer una prioridad, ya que el usuario puede mover las barras de herramientas. Normalmente, la colocación inicial de una barra de herramientas se define mediante programación, pero los cambios posteriores del usuario se conservan.
En la sección Grupos , después de la entrada de grupo existente, defina un elemento Group para que contenga los comandos de la barra de herramientas.
<Group guid="guidToolbarTestCommandPackageCmdSet" id="ToolbarGroup" priority="0x0000"> <Parent guid="guidToolbarTestCommandPackageCmdSet" id="Toolbar" /> </Group>
Haga que el botón aparezca en la barra de herramientas. En la sección Botones, reemplace el bloque Primario de la barra de herramientas Botón. El bloque Button resultante debe tener este aspecto:
<Button guid="guidToolbarTestCommandPackageCmdSet" id="ToolbarTestCommandId" priority="0x0100" type="Button"> <Parent guid= "guidToolbarTestCommandPackageCmdSet" id="ToolbarGroup" /> <Icon guid="guidImages" id="bmpPic1" /> <Strings> <ButtonText>Invoke ToolbarTestCommand</ButtonText> </Strings> </Button>
De forma predeterminada, si una barra de herramientas no tiene comandos, no aparece.
Compile la solución y comience la depuración. Debería aparecer la instancia experimental.
Haga clic con el botón derecho en la barra de menús de Visual Studio para obtener la lista de barras de herramientas. Seleccione Probar barra de herramientas.
Ahora debería ver la barra de herramientas como un icono a la derecha del icono Buscar en archivos. Al hacer clic en el icono, debería ver un cuadro de mensaje que indica ToolbarTestCommandPackage. Dentro de IDEToolbar.ToolbarTestCommand.MenuItemCallback().