CustomTaskPane Интерфейс

Определение

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

[System.Runtime.InteropServices.Guid("881b42fd-484d-4494-8500-779de4e4aac1")]
public interface CustomTaskPane : IDisposable
Атрибуты
Реализации

Примеры

В следующем примере кода показано, как создать настраиваемую область задач с помощью Add(UserControl, String) метода. В примере свойства CustomTaskPane объекта используются для задания внешнего вида настраиваемой области задач по умолчанию и определения обработчика событий для DockPositionChanged события. Чтобы скомпилировать этот пример, скопируйте код в ThisAddIn класс в проекте надстройки для приложения, которое поддерживает настраиваемые области задач. Замените метод по умолчанию ThisAddIn_Startup в ThisAddIn классе ThisAddIn_Startup методом в этом примере. В этом примере также предполагается, что проект содержит UserControl имя MyUserControl , а UserControl содержит FlowLayoutPanel имя FlowPanel .

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;
        }
    }
}
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

Комментарии

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

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

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

Примечание

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

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

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

Свойства

Control

Возвращает UserControl, который предоставляет пользовательский интерфейс настраиваемой области задач.

DockPosition

Возвращает или задает значение, которое указывает, где находится настраиваемая область задач относительно окна приложения.

DockPositionRestrict

Возвращает или задает значение, которое запрещает закрепление области задач в указанном месте.

Height

Возвращает или задает высоту настраиваемой панели задач в пунктах.

Title

Возвращает название настраиваемой области задач.

Visible

Возвращает или задает значение, которое указывает, видима ли настраиваемая область задач.

Width

Возвращает или задает ширину настраиваемой панели задач в пунктах.

Window

Получает окно документа, с которым связана пользовательская область задач.

События

DockPositionChanged

Происходит, если пользователь изменяет позицию закрепления настраиваемой области задач или если код изменяет значение свойства DockPosition.

VisibleChanged

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

Применяется к