Compartilhar via


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

Membros CustomTaskPane

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