CustomTaskPane (Interfaz)
Representa un panel de tareas personalizado en una aplicación de Microsoft Office.
Espacio de nombres: Microsoft.Office.Tools
Ensamblados: Microsoft.Office.Tools.Common.v4.0.Utilities (en Microsoft.Office.Tools.Common.v4.0.Utilities.dll)
Microsoft.Office.Tools.Outlook.v4.0.Utilities (en Microsoft.Office.Tools.Outlook.v4.0.Utilities.dll)
Microsoft.Office.Tools.Excel.v4.0.Utilities (en Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
Microsoft.Office.Tools.Common (en Microsoft.Office.Tools.Common.dll)
Microsoft.Office.Tools.Word.v4.0.Utilities (en Microsoft.Office.Tools.Word.v4.0.Utilities.dll)
Sintaxis
'Declaración
<GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")> _
Public Interface CustomTaskPane _
Inherits IDisposable
[GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")]
public interface CustomTaskPane : IDisposable
El tipo CustomTaskPane expone los siguientes miembros.
Propiedades
Nombre | Descripción | |
---|---|---|
Control | Obtiene el UserControl que proporciona la interfaz de usuario del panel de tareas personalizado. | |
DockPosition | Obtiene o establece un valor que especifica la posición del panel de tareas personalizado respecto de la ventana de aplicación. | |
DockPositionRestrict | Obtiene o establece un valor que impide acoplar el panel de tareas personalizado en la posición especificada. | |
Height | Obtiene o establece el alto del panel de tareas personalizado, en puntos. | |
Title | Obtiene el título del panel de tareas personalizado. | |
Visible | Obtiene o establece un valor que especifica si el panel de tareas personalizado está visible. | |
Width | Obtiene o establece el ancho del panel de tareas personalizado, en puntos. | |
Window | Obtiene la ventana de documento a la que está asociado el panel de tareas personalizado. |
Arriba
Métodos
Nombre | Descripción | |
---|---|---|
Dispose | Realiza tareas definidas por la aplicación asociadas a la liberación o al restablecimiento de recursos no administrados. (Se hereda de IDisposable). |
Arriba
Eventos
Nombre | Descripción | |
---|---|---|
DockPositionChanged | Se produce cuando el usuario cambia la posición de acoplamiento del panel de tareas personalizado o cuando el código cambia el valor de la propiedad DockPosition. | |
VisibleChanged | Se produce cuando el usuario muestra o cierra el panel de tareas personalizado o cuando el código cambia el valor de la propiedad Visible. |
Arriba
Comentarios
Utilice un objeto CustomTaskPane en un complemento de nivel de aplicación para modificar un panel de tareas personalizado o responder cuando cambie la ubicación o visibilidad de dicho panel.Los paneles de tareas son paneles de interfaz de usuario que normalmente están acoplados a un lado de una ventana de aplicación.Para obtener información acerca de cómo se crean los paneles de tareas personalizados, vea Paneles de tareas personalizados.
Para controlar el tamaño o ubicación del panel de tareas personalizado, puede utilizar propiedades como Height, Width y Visible.
Para responder cuando se mueva el panel de tareas personalizado o cambie su visibilidad, puede controlar los eventos DockPositionChanged y VisibleChanged.
[!NOTA]
Esta interfaz está implementada por el Runtime de Microsoft Visual Studio Tools para Office. No está prevista su implementación en el código. Para obtener más información, vea Información general sobre el Motor en tiempo de ejecución de Microsoft Visual Studio Tools para Office.
Uso
En esta documentación se describe la versión de este tipo que se usa en los proyectos de Office destinados a .NET Framework 4 y .NET Framework 4.5. En los proyectos destinados a .NET Framework 3.5, este tipo podría tener unos miembros diferentes y los ejemplos de código de este tipo podrían no funcionar. Para informarse sobre este tipo en los proyectos destinados a .NET Framework 3.5, vea la siguiente sección de referencia en la documentación de Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.
Ejemplos
El ejemplo de código siguiente muestra cómo crear un panel de tareas personalizado mediante el método Add(UserControl, String).En el ejemplo se utilizan propiedades del objeto CustomTaskPane para establecer la apariencia predeterminada del panel de tareas personalizado y se define un controlador para el evento DockPositionChanged.Para compilar este ejemplo, copie el código en la clase ThisAddIn de un proyecto de aplicación que admita paneles de tareas personalizados.Reemplace el método ThisAddIn_Startup predeterminado de la clase ThisAddIn por el método ThisAddIn_Startup de este ejemplo.En este ejemplo también se supone que el proyecto contiene un control UserControl denominado MyUserControl, y que UserControl contiene un objeto FlowLayoutPanel denominado FlowPanel.
Private myUserControl1 As MyUserControl
Private WithEvents myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Me.Startup
myUserControl1 = New MyUserControl()
myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "New Task Pane")
With myCustomTaskPane
.DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionFloating
.Height = 500
.Width = 500
.DockPosition = Office.MsoCTPDockPosition.msoCTPDockPositionRight
.Width = 300
.Visible = True
End With
End Sub
Private Sub myCustomTaskPane_DockPositionChanged(ByVal sender As Object, _
ByVal e As EventArgs) Handles myCustomTaskPane.DockPositionChanged
Dim taskPane As Microsoft.Office.Tools.CustomTaskPane = _
TryCast(sender, Microsoft.Office.Tools.CustomTaskPane)
If taskPane IsNot Nothing Then
' Adjust sizes of user control and flow panel to fit current task pane size.
Dim userControl As MyUserControl = TryCast(taskPane.Control, MyUserControl)
Dim paneSize As System.Drawing.Size = _
New System.Drawing.Size(taskPane.Width, taskPane.Height)
userControl.Size = paneSize
userControl.FlowPanel.Size = paneSize
' Adjust flow direction of controls on the task pane.
If taskPane.DockPosition = _
Office.MsoCTPDockPosition.msoCTPDockPositionTop Or _
taskPane.DockPosition = _
Office.MsoCTPDockPosition.msoCTPDockPositionBottom Then
userControl.FlowPanel.FlowDirection = _
System.Windows.Forms.FlowDirection.LeftToRight
Else
userControl.FlowPanel.FlowDirection = _
System.Windows.Forms.FlowDirection.TopDown
End If
End If
End Sub
private MyUserControl myUserControl1;
private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
myUserControl1 = new MyUserControl();
myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1,
"New Task Pane");
myCustomTaskPane.DockPosition =
Office.MsoCTPDockPosition.msoCTPDockPositionFloating;
myCustomTaskPane.Height = 500;
myCustomTaskPane.Width = 500;
myCustomTaskPane.DockPosition =
Office.MsoCTPDockPosition.msoCTPDockPositionRight;
myCustomTaskPane.Width = 300;
myCustomTaskPane.Visible = true;
myCustomTaskPane.DockPositionChanged +=
new EventHandler(myCustomTaskPane_DockPositionChanged);
}
private void myCustomTaskPane_DockPositionChanged(object sender, EventArgs e)
{
Microsoft.Office.Tools.CustomTaskPane taskPane =
sender as Microsoft.Office.Tools.CustomTaskPane;
if (taskPane != null)
{
// Adjust sizes of user control and flow panel to fit current task pane size.
MyUserControl userControl = taskPane.Control as MyUserControl;
System.Drawing.Size paneSize = new System.Drawing.Size(taskPane.Width, taskPane.Height);
userControl.Size = paneSize;
userControl.FlowPanel.Size = paneSize;
// Adjust flow direction of controls on the task pane.
if (taskPane.DockPosition ==
Office.MsoCTPDockPosition.msoCTPDockPositionTop ||
taskPane.DockPosition ==
Office.MsoCTPDockPosition.msoCTPDockPositionBottom)
{
userControl.FlowPanel.FlowDirection =
System.Windows.Forms.FlowDirection.LeftToRight;
}
else
{
userControl.FlowPanel.FlowDirection =
System.Windows.Forms.FlowDirection.TopDown;
}
}
}
Vea también
Referencia
Microsoft.Office.Tools (Espacio de nombres)
Otros recursos
Introducción a la programación de complementos de nivel de aplicación
Paneles de tareas personalizados
Cómo: Agregar un panel de tareas personalizado a una aplicación
Tutorial: Automatizar una aplicación desde un panel de tareas personalizado