CustomTaskPane Classe (sistema de 2007)
Representa um painel de tarefas personalizado em um aplicativo Microsoft Office.
Namespace: Microsoft.Office.Tools
Assembly: Microsoft.Office.Tools.Common.v9.0 (em Microsoft.Office.Tools.Common.v9.0.dll)
Sintaxe
Public NotInheritable Class CustomTaskPane _
Implements IDisposable
Dim instance As CustomTaskPane
public sealed class CustomTaskPane : IDisposable
Comentários
Use o CustomTaskPane classe em um suplemento em nível de aplicativo para modificar um personalizado tarefa painel, ou para responder quando o local ou a visibilidade de personalizado tarefa painel muda.
Para controlar o dimensionar ou local de personalizado tarefa painel, você pode usar propriedades, sistema autônomo Height, Width, e Visible.
Para responder quando personalizado tarefa painel se movimenta ou muda de visibilidade, você pode manipular o DockPositionChanged e VisibleChanged eventos.
tarefa painéis são os painéis de interface do usuário que normalmente são encaixados em um dos lados de uma janela do aplicativo.Para obter informações sobre como criar personalizada tarefa painéis, consulte Visão geral de painéis de tarefas Personalizar.
Exemplos
O exemplo de código a seguir demonstra como criar uma personalizada tarefa painel usando o Add(UserControl, String) método. O exemplo usa propriedades do CustomTaskPane objeto para conjunto a aparência padrão do personalizado tarefa painel e define um manipulador de eventos para o DockPositionChanged evento. Para compilar este exemplo, copie o código para o ThisAddIn classe em um add - in projeto para um aplicativo que ofereça suporte personalizado tarefa painéis. Substituir o padrão de ThisAddIn_Startup método na ThisAddIn classe com o ThisAddIn_Startup método neste exemplo. Este exemplo também pressupõe que o projeto contém um UserControl chamada MyUserControle o UserControl contém um FlowLayoutPanel chamada FlowPanel.
Private myUserControl1 As MyUserControl
PrivateWithEvents myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
PrivateSub ThisAddIn_Startup(ByVal sender AsObject, ByVal e As System.EventArgs) _
HandlesMe.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 = TrueEndWithEndSubPrivateSub myCustomTaskPane_DockPositionChanged(ByVal sender AsObject, _
ByVal e As EventArgs) Handles myCustomTaskPane.DockPositionChanged
Dim taskPane As Microsoft.Office.Tools.CustomTaskPane = _
TryCast(sender, Microsoft.Office.Tools.CustomTaskPane)
If taskPane IsNotNothingThen
' 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
EndIfEndIfEndSub
private MyUserControl myUserControl1;
private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
privatevoid 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);
}
privatevoid 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;
}
}
}
Hierarquia de herança
System.Object
Microsoft.Office.Tools.CustomTaskPane
Acesso thread-safe
Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.
Consulte também
Referência
Namespace Microsoft.Office.Tools
Outros recursos
Introdução Programação Application-Nível Adicionar-ins
Visão geral de painéis de tarefas Personalizar
Gerenciamento de painéis de tarefas Personalizars em Múltiplo aplicativos Windows
Como: Adicionar um painel de tarefas Personalizar a um aplicativo
Demonstra Passo a passo: Automatizar um aplicativo a partir de um painel de tarefas Personalizar