Compartilhar via


Interface CustomTaskPane

Representa um painel de tarefa personalizada em um aplicativo do Microsoft Office.

Namespace:  Microsoft.Office.Tools
Assemblies:   Microsoft.Office.Tools.Common.v4.0.Utilities (em Microsoft.Office.Tools.Common.v4.0.Utilities.dll)
  Microsoft.Office.Tools.Outlook.v4.0.Utilities (em Microsoft.Office.Tools.Outlook.v4.0.Utilities.dll)
  Microsoft.Office.Tools.Excel.v4.0.Utilities (em Microsoft.Office.Tools.Excel.v4.0.Utilities.dll)
  Microsoft.Office.Tools.Common (em Microsoft.Office.Tools.Common.dll)
  Microsoft.Office.Tools.Word.v4.0.Utilities (em Microsoft.Office.Tools.Word.v4.0.Utilities.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 UserControl que fornece a interface do usuário do painel de tarefa personalizada.
Propriedade pública DockPosition Obtém ou define um valor que especifica onde o painel de tarefa personalizada é posicionado em relação à janela do aplicativo.
Propriedade pública DockPositionRestrict Obtém ou define um valor que impede o painel de tarefa personalizada está conectado na posição especificada.
Propriedade pública Height Obtém ou define a altura do painel de tarefa personalizada, em pontos.
Propriedade pública Title Obtém o título do painel de tarefa personalizada.
Propriedade pública Visible Obtém ou define um valor que especifica se o painel de tarefa personalizada é visível.
Propriedade pública Width Obtém ou define a largura do painel de tarefa personalizada, em pontos.
Propriedade pública Window Obtém a janela de documento que o painel de tarefa personalizada está associado.

Superior

Métodos

  Nome Descrição
Método público Dispose Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados. (Herdado de IDisposable.)

Superior

Eventos

  Nome Descrição
Evento público DockPositionChanged Ocorre quando o usuário mudar a posição do plug-in do painel de tarefa personalizada, ou quando alterações de código o valor da propriedade de DockPosition .
Evento público VisibleChanged Ocorre quando o usuário exibir ou fechar o painel de tarefa personalizada, ou quando alterações de código o valor da propriedade de Visible .

Superior

Comentários

Use um objeto de CustomTaskPane em um suplemento ao nível para alterar um painel de tarefa personalizada, ou para responder quando o local ou a visibilidade das alterações do painel de tarefa personalizada. Os painéis de tarefas são os painéis de interface do usuário que estão conectados normalmente a um lado de uma janela de aplicativo. Para obter informações sobre como criar os painéis de tarefa personalizada, consulte Painéis de tarefa personalizados.

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

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

Dica

Essa 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 Visão geral de tempo de execução do Visual Studio Tools for Office.

Uso

Essa documentação descreve a versão desse tipo que é usada apenas nos projetos do Office direcionados ao .NET Framework 4 e ao .NET Framework 4.5. Em projetos direcionados ao .NET Framework 3.5, esse tipo pode ter membros diferentes e os exemplos de código fornecidos para este tipo talvez não funcionem. Para conhecer a documentação sobre esse tipo de projeto direcionado 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 demonstra como criar um painel de tarefa personalizada usando o método Add(UserControl, String) . As propriedades do exemplo usa o objeto de CustomTaskPane para definir a aparência padrão do painel de tarefa personalizada, e definem um manipulador de eventos para o evento de DockPositionChanged . Para criar esse exemplo, copie o código na classe de ThisAddIn em um projeto do suplemento para um aplicativo que suporta os painéis de tarefa personalizada. Substitua o método padrão de ThisAddIn_Startup na classe de ThisAddIn com o método de ThisAddIn_Startup neste exemplo. Este exemplo também pressupõe que o projeto contém UserControl chamado MyUserControl, e UserControl contém 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

Introdução a suplementos no nível de aplicativo da programação

Painéis de tarefa personalizados

Como adicionar um painel de tarefas personalizado a um aplicativo

Instruções passo a passo: automatizando um aplicativo a partir de um painel Tarefa Personalizada