Partager via


CustomTaskPane.DockPositionChanged, événement (System 2007)

Mise à jour : novembre 2007

Se produit lorsque l'utilisateur modifie l'emplacement d'ancrage du volet de tâches personnalisé ou lorsque le code modifie la valeur de la propriété DockPosition.

Espace de noms :  Microsoft.Office.Tools
Assembly :  Microsoft.Office.Tools.Common.v9.0 (dans Microsoft.Office.Tools.Common.v9.0.dll)

Syntaxe

Public Event DockPositionChanged As EventHandler

Dim instance As CustomTaskPane
Dim handler As EventHandler

AddHandler instance.DockPositionChanged, handler
public event EventHandler DockPositionChanged

Exemples

L'exemple de code suivant illustre un gestionnaire d'événements pour l'événement DockPositionChanged. Ce gestionnaire d'événements modifie la disposition horizontale ou verticale des contrôles sur le volet de tâches en modifiant la propriété FlowDirection d'un FlowLayoutPanel sur le volet de tâches. Cet exemple de code suppose que le volet de tâches contient un UserControl appelé MyUserControl et le UserControl, un FlowLayoutPanel appelé FlowPanel. Cet exemple fait partie d'un exemple plus complet fourni pour la classe CustomTaskPane.

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

Autorisations

Voir aussi

Référence

CustomTaskPane, classe

Membres CustomTaskPane

Microsoft.Office.Tools, espace de noms