Compartilhar via


Interface CustomTaskPane

Represents a custom task pane in a Microsoft Office application.

Namespace:  Microsoft.Office.Tools
Assembly:  Microsoft.Office.Tools.Common (em Microsoft.Office.Tools.Common.dll)

Sintaxe

'Declaração
<GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")> _
Public Interface CustomTaskPane _
    Inherits IDisposable
[GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")]
public interface CustomTaskPane : IDisposable

O tipo CustomTaskPane expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública Control Obtém o UserControl que fornece a interface do usuário do painel de tarefas personalizado.
Propriedade pública DockPosition Obtém ou define um valor que especifica onde o painel de tarefas personalizado está localizado em relação à janela do aplicativo.
Propriedade pública DockPositionRestrict Obtém ou define um valor que impede que o painel de tarefas personalizado sendo encaixado na posição especificada.
Propriedade pública Height Obtém ou define a altura do painel de tarefas personalizado, em pontos.
Propriedade pública Title Obtém o título do painel de tarefas personalizado.
Propriedade pública Visible Obtém ou define um valor que especifica se o painel de tarefas personalizado está visível.
Propriedade pública Width Obtém ou define a largura do painel de tarefas personalizado, em pontos.
Propriedade pública Window Obtém a janela de documento que está associado ao painel de tarefas personalizado.

Início

Métodos

  Nome Descrição
Método público Dispose Executa tarefas de definição de aplicativo associadas liberando, liberando ou redefinindo recursos não gerenciados. (Herdado de IDisposable.)

Início

Eventos

  Nome Descrição
Evento público DockPositionChanged Ocorre quando o usuário altera a posição de encaixe do painel de tarefas personalizado ou código altera o valor da DockPosition propriedade.
Evento público VisibleChanged Ocorre quando o usuário exibe ou fecha o painel de tarefas personalizado ou código altera o valor da Visible propriedade.

Início

Comentários

Use um CustomTaskPane o objeto em um nível de aplicativo suplemento para modificar um painel de tarefas personalizado ou para responder quando o local ou a visibilidade das alterações de painel de tarefas personalizado. Painéis são os painéis de interface do usuário que normalmente são encaixados em um lado da janela do aplicativo. Para obter informações sobre como criar painéis de tarefas personalizados, consulte Visão geral sobre painéis de tarefas personalizado.

Para controlar o tamanho ou local do painel de tarefas personalizado, você pode usar propriedades, como Height, Width, e Visible.

Para responder quando o painel de tarefas personalizado move ou altera a visibilidade, você pode manipular o DockPositionChanged e VisibleChanged eventos.

ObservaçãoObservação

Esta interface é implementada pelo Visual Studio Tools for Office runtime. Ela não se destina a ser implementada em seu código. Para obter mais informações, consulte Visual Studio Tools for Office visão geral sobre o tempo de execução.

Usage

Esta documentação descreve a versão deste tipo que é usada em projetos do Office destinados ao .NET Framework 4. Em projetos destinados ao .NET Framework 3.5, este tipo poderá ter membros diferentes, e os exemplos de código fornecidos para o tipo talvez não funcionem. Para obter documentação sobre este tipo em projetos destinados ao .NET Framework 3.5, consulte a seguinte seção de referência na documentação do Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.

Exemplos

O exemplo de código a seguir demonstra como criar um painel de tarefas personalizado usando o Add(UserControl, String) método. O exemplo usa propriedades da CustomTaskPane de objeto para definir a aparência padrão do painel de tarefas personalizado, e define um manipulador de eventos para o DockPositionChanged de evento. Para compilar este exemplo, copie o código para o ThisAddIn a classe em um projeto do suplemento para um aplicativo que ofereça suporte painéis de tarefas personalizado. Substituir o padrão ThisAddIn_Startup método na ThisAddIn de classe com o ThisAddIn_Startup método neste exemplo. Este exemplo também pressupõe que o projeto contém um UserControl chamado MyUserControle o UserControl contém um FlowLayoutPanel chamado 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;
        }
    }
}

Consulte também

Referência

Namespace Microsoft.Office.Tools

Outros recursos

Obtenção iniciada de programação de aplicativo-nível Add-Ins

Visão geral sobre painéis de tarefas personalizado

Gerenciando os painéis de tarefas personalizados em várias janelas de aplicativo

Como: Adicionar um painel de tarefas personalizado a um aplicativo

Demonstra Passo a passo: A automatização de um aplicativo a partir de um painel de tarefas personalizado