Tutorial: Sincronizar un panel de tareas personalizado con un botón de la cinta de opciones
Actualización: noviembre 2007
Se aplica a |
---|
La información de este tema sólo se aplica a los proyectos especificados de Visual Studio Tools para Office y a las aplicaciones de Microsoft Office. Tipo de proyecto
Aplicación de Microsoft Office
Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto. |
En este tutorial se muestra cómo crear un panel de tareas personalizado que los usuarios pueden ocultar o mostrar haciendo clic en un botón de alternancia en la cinta de opciones. Siempre debería crear un elemento de la interfaz de usuario, como un botón, en el que los usuarios puedan hacer clic para mostrar u ocultar el panel de tareas personalizado, porque las aplicaciones de Microsoft Office no proporcionan una manera predeterminada para que los usuarios muestren u oculten los paneles de tareas personalizados.
Aunque en este tutorial se usa específicamente Excel, los conceptos que se muestran en el mismo se pueden aplicar a cualquiera de las aplicaciones enumeradas anteriormente.
Este tutorial ilustra las tareas siguientes:
Diseñar la interfaz de usuario del panel de tareas personalizado.
Agregar un botón de alternancia a la cinta de opciones.
Sincronizar el botón de alternancia con el panel de tareas personalizado.
Nota: |
---|
Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio en las siguientes instrucciones. La edición de Visual Studio que tenga y la configuración que esté utilizando determinan estos elementos. Para obtener más información, consulte Valores de configuración de Visual Studio. |
Requisitos previos
Necesita los componentes siguientes para completar este tutorial:
Visual Studio Tools para Office (componente opcional de Visual Studio 2008 Professional y Visual Studio Team System).
Microsoft Office Excel 2007.
Visual Studio Tools para Office se instala, de forma predeterminada, con las versiones que se enumeran de Visual Studio. Para comprobar si está instalado, consulte Instalar Visual Studio Tools para Office.
Crear el proyecto de complemento
En este paso creará un proyecto de aplicación de complemento para Excel.
Para crear un nuevo proyecto
Cree un proyecto Complemento de Excel con el nombre SynchronizeTaskPaneAndRibbon mediante la plantilla de proyecto Complemento de Excel para Microsoft Office System 2007. Para obtener más información, consulte Cómo: Crear proyectos de Visual Studio para Office.
Visual Studio abre el archivo de código ThisAddIn.cs o ThisAddIn.vb y agrega el proyecto SynchronizeTaskPaneAndRibbon al Explorador de soluciones.
Agregar un botón de alternancia a la cinta de opciones
Una de las instrucciones de diseño de las aplicaciones de Office es que los usuarios siempre deberían tener control de su interfaz de usuario. Para que los usuarios puedan controlar el panel de tareas personalizado, puede agregar un botón de alternancia a la cinta de opciones que muestre y oculte el panel de tareas. Para crear un botón de alternancia, agregue un elemento Cinta (diseñador visual) al proyecto. El diseñador ayuda a agregar y colocar controles, a establecer las propiedades del control y a controlar los eventos de control. Para obtener más información, consulte diseñador de la cinta de opciones.
Para agregar un botón de alternancia a la cinta de opciones
En el menú Proyecto, haga clic en Agregar nuevo elemento.
En el cuadro de diálogo Agregar nuevo elemento, seleccione Cinta (diseñador visual).
Cambie el nombre de la nueva cinta de opciones por ManageTaskPaneRibbon y haga clic en Agregar.
El archivo ManageTaskPaneRibbon.cs o ManageTaskPaneRibbon.vb se abre en el diseñador de la cinta de opciones y muestra una ficha y un grupo predeterminados.
En el diseñador de la cinta de opciones, haga clic en grupo1.
En la ventana Propiedades , establezca la propiedad Etiqueta en Task Pane Manager.
En la ficha Controles de la cinta de opciones de Office del Cuadro de herramientas, arrastre ToggleButton al grupo Task Pane Manager.
Haga clic en toggleButton1.
En la ventana Propiedades, establezca la propiedad Etiqueta en Show Task Pane.
Diseñar la interfaz de usuario del panel de tareas personalizado
No existe ningún diseñador visual para los paneles de tareas personalizados, pero puede diseñar un control de usuario con la distribución que desee. Más adelante en este tutorial, agregará el control de usuario al panel de tareas personalizado.
Para diseñar la interfaz de usuario del panel de tareas personalizado
En el menú Proyecto, haga clic en Agregar control de usuario.
En el cuadro de diálogo Agregar nuevo elemento, cambie el nombre del control de usuario a TaskPaneControl y haga clic en Agregar.
Se abre el control de usuario en el diseñador.
En la ficha Controles comunes del Cuadro de herramientas, arrastre un control TextBox hasta el control de usuario.
Crear el panel de tareas personalizado
Para crear el panel de tareas personalizado cuando se inicia el complemento, agregue el control de usuario al panel de tareas en el controlador de eventos Startup del complemento. De forma predeterminada, el panel de tareas personalizado no estará visible. Más adelante en este tutorial agregará código que mostrará u ocultará el panel de tareas cuando el usuario haga clic en el botón de alternancia que agregó a la cinta de opciones.
Para crear el panel de tareas personalizado
En el Explorador de soluciones, expanda Excel.
Haga clic con el botón secundario del mouse en ThisAddIn.cs o ThisAddIn.vb, y haga clic en Ver código.
Agregue el código siguiente a la clase ThisAddIn. Este código declara una instancia de TaskPaneControl como miembro de ThisAddIn.
Private taskPaneControl1 As TaskPaneControl Private WithEvents taskPaneValue As Microsoft.Office.Tools.CustomTaskPane
private TaskPaneControl taskPaneControl1; private Microsoft.Office.Tools.CustomTaskPane taskPaneValue;
Reemplace el controlador de evento ThisAddIn_Startup con el código siguiente. Este código agrega el objeto TaskPaneControl al campo CustomTaskPanes, pero no muestra el panel de tareas personalizado (de forma predeterminada, la propiedad Visible de la clase CustomTaskPane es false). El código de Visual C# también adjunta un controlador de eventos al evento VisibleChanged.
Private Sub ThisAddIn_Startup(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles Me.Startup taskPaneControl1 = New TaskPaneControl() taskPaneValue = Me.CustomTaskPanes.Add( _ taskPaneControl1, "MyCustomTaskPane") End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e) { taskPaneControl1 = new TaskPaneControl(); taskPaneValue = this.CustomTaskPanes.Add( taskPaneControl1, "MyCustomTaskPane"); taskPaneValue.VisibleChanged += new EventHandler(taskPaneValue_VisibleChanged); }
Agregue el método siguiente a la clase ThisAddIn. Este método controla el evento VisibleChanged. Cuando el usuario cierra el panel de tareas haciendo clic en el botón Cerrar (X), este método actualiza el estado del botón de alternancia en la cinta de opciones.
Private Sub taskPaneValue_VisibleChanged(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles taskPaneValue.VisibleChanged Globals.Ribbons.ManageTaskPaneRibbon.ToggleButton1.Checked = taskPaneValue.Visible End Sub
private void taskPaneValue_VisibleChanged(object sender, System.EventArgs e) { Globals.Ribbons.ManageTaskPaneRibbon.toggleButton1.Checked = taskPaneValue.Visible; }
Agregue la siguiente propiedad a la clase ThisAddIn. Esta propiedad expone el objeto myCustomTaskPane1 privado a otras clases. Más adelante en este tutorial agregará código a la clase MyRibbon que utiliza esta propiedad.
Public ReadOnly Property TaskPane() As Microsoft.Office.Tools.CustomTaskPane Get Return taskPaneValue End Get End Property
public Microsoft.Office.Tools.CustomTaskPane TaskPane { get { return taskPaneValue; } }
Ocultar y mostrar el panel de tareas personalizado con el botón de alternancia
El último paso consiste en agregar código que muestre u oculte el panel de tareas personalizado cuando el usuario haga clic en el botón de alternancia en la cinta de opciones.
Para mostrar y ocultar el panel de tareas personalizado con el botón de alternancia
En el diseñador de la cinta de opciones, haga doble clic en el botón de alternancia Mostrar panel de tareas.
Visual Studio Tools para Office genera automáticamente un controlador de eventos denominado toggleButton1_Click, que administra el evento Click del botón de alternar. Visual Studio Tools para Office también abre el archivo MyRibbon.cs o MyRibbon.vb en el Editor de código.
Reemplace el controlador de evento toggleButton1_Click con el código siguiente. Cuando el usuario hace clic en el botón de alternancia, este código muestra u oculta el panel de tareas personalizado, dependiendo de si el botón de alternancia está presionado o no.
Private Sub ToggleButton1_Click(ByVal sender As System.Object, _ ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) Handles ToggleButton1.Click Globals.ThisAddIn.TaskPane.Visible = _ TryCast(sender, Microsoft.Office.Tools.Ribbon.RibbonToggleButton).Checked End Sub
private void toggleButton1_Click(object sender, RibbonControlEventArgs e) { Globals.ThisAddIn.TaskPane.Visible = ((RibbonToggleButton)sender).Checked; }
Probar el complemento
Al ejecutar el proyecto, Excel se abre sin mostrar el panel de tareas personalizado. Haga clic en el botón de alternancia en la cinta de opciones para probar el código.
Para probar el complemento
Presione F5 para ejecutar el proyecto.
Confirme que Excel se abre y que la ficha Complementos aparece en la cinta de opciones.
Haga clic en la ficha Complementos de la cinta de opciones.
En el grupo Task Pane Manager, haga clic en el botón de alternancia Show Task Pane.
Compruebe que el panel de tareas se muestra y oculta alternativamente al hacer clic en el botón de alternancia.
Cuando el panel de tareas esté visible, haga clic en el botón Cerrar (X) en la esquina del panel de tareas.
Compruebe que el botón de alternancia aparece como no presionado.
Pasos siguientes
Puede obtener más información sobre cómo crear paneles de tareas personalizados en estos temas:
Crear un panel de tareas personalizado en el complemento para otra aplicación en la versión 2007 de Microsoft Office. Para obtener más información sobre las aplicaciones que admiten paneles de tareas personalizados, vea Información general sobre los paneles de tareas personalizados.
Automatizar una aplicación desde un panel de tareas personalizado. Para obtener más información, consulte Tutorial: Automatizar una aplicación desde un panel de tareas personalizado.
Crear un panel de tareas personalizado para cada mensaje de correo electrónico que se abre en Outlook. Para obtener más información, vea Tutorial: Mostrar paneles de tareas personalizados con mensajes de correo electrónico en Outlook.
Vea también
Tareas
Cómo: Agregar un panel de tareas personalizado a una aplicación
Tutorial: Automatizar una aplicación desde un panel de tareas personalizado
Tutorial: Mostrar paneles de tareas personalizados con mensajes de correo electrónico en Outlook
Cómo: Mostrar paneles de tareas personalizados con mensajes de correo electrónico en Outlook
Conceptos
Información general sobre los paneles de tareas personalizados
Administrar paneles de tareas personalizados en varias ventanas de la aplicación