CustomTaskPane - интерфейс

Представляет настраиваемые области задач в приложении Microsoft Office.

Пространство имен:  Microsoft.Office.Tools
Сборка:  Microsoft.Office.Tools.Common (в Microsoft.Office.Tools.Common.dll)

Синтаксис

'Декларация
<GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")> _
Public Interface CustomTaskPane _
    Inherits IDisposable
[GuidAttribute("881b42fd-484d-4494-8500-779de4e4aac1")]
public interface CustomTaskPane : IDisposable

Тип CustomTaskPane предоставляет следующие члены.

Свойства

  Имя Описание
Открытое свойство Control Возвращает UserControl, который предоставляет пользовательский интерфейс настраиваемой области задач.
Открытое свойство DockPosition Возвращает или задает значение, которое указывает, где находится настраиваемая область задач относительно окна приложения.
Открытое свойство DockPositionRestrict Возвращает или задает значение, которое запрещает закрепление области задач в указанном месте.
Открытое свойство Height Возвращает или задает высоту настраиваемой панели задач в пунктах.
Открытое свойство Title Возвращает название настраиваемой области задач.
Открытое свойство Visible Возвращает или задает значение, которое указывает, видима ли настраиваемая область задач.
Открытое свойство Width Возвращает или задает ширину настраиваемой панели задач в пунктах.
Открытое свойство Window Возвращает окно документа, с которым связана настраиваемая область задач.

В начало страницы

Методы

  Имя Описание
Открытый метод Dispose Выполняет определяемые приложением задачи, связанные с высвобождением или сбросом неуправляемых ресурсов. (Унаследовано от IDisposable.)

В начало страницы

События

  Имя Описание
Открытое событие DockPositionChanged Происходит, если пользователь изменяет позицию закрепления настраиваемой области задач или если код изменяет значение свойства DockPosition.
Открытое событие VisibleChanged Происходит, если пользователь отображает или закрывает настраиваемую область задач или если код изменяет значение свойства Visible.

В начало страницы

Заметки

Используйте объект CustomTaskPane в надстройке уровня приложения для изменения настраиваемой области задач или ответа при изменении расположения или видимости настраиваемой области задач. Области задач — это области пользовательского интерфейса, которые обычно закрепляются у одного края окна приложения. Дополнительные сведения о создании настраиваемых областей задач см. в разделе Общие сведения о настраиваемых областях задач.

Для управления размером или расположением настраиваемой области можно использовать свойства, например Height, Width и Visible.

Чтобы реагировать на перемещение настраиваемой области задач или изменение видимости, можно обрабатывать события DockPositionChanged и VisibleChanged.

Примечание

Данный интерфейс реализован средствами Visual Studio Tools для среды выполнения Office. Он не предназначен для реализации в пользовательском коде. Дополнительные сведения см. в разделе Общие сведения об инструментах Visual Studio для среды выполнения Office.

Использование

В настоящей документации описывается версия данного типа, которая используется в проектах Office, предназначенных для платформы .NET Framework 4. В проектах, предназначенных для платформы .NET Framework 3.5, этот тип может содержать другие члены и примеры, предназначенные для данного типа, могут не работать. Документацию о данном типе в проектах, предназначенных для платформы .NET Framework 3.5, см. в следующем справочном разделе документации Visual Studio 2008: https://go.microsoft.com/fwlink/?LinkId=160658.

Примеры

В следующем примере кода показано, как создать настраиваемую область задач с помощью метода Add(UserControl, String). В примере для задания стандартного внешнего вида настраиваемой области задач используются свойства объекта CustomTaskPane и определяется обработчик событий DockPositionChanged. Для компиляции этого примера скопируйте код в класс ThisAddIn в проекте надстройки приложения, которое поддерживает настраиваемые области задач. Замените метод по умолчанию ThisAddIn_Startup в классе ThisAddIn методом ThisAddIn_Startup из этого примера. В данном примере также предполагается, что в проекте содержится элемент управления UserControl с именем MyUserControl, а элемент управления UserControl, в свою очередь, содержит элемент управления FlowLayoutPanel с именем 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;
        }
    }
}

См. также

Ссылки

Microsoft.Office.Tools - пространство имен

Другие ресурсы

Приступая к программированию надстроек на уровне приложения

Общие сведения о настраиваемых областях задач

Управление настраиваемыми областями задач в нескольких окнах приложений

Практическое руководство. Добавление настраиваемой панели задач в приложение

Руководство. Автоматизация приложения в настраиваемой области задач