ActionsPane.Orientation, propriété
Obtient une valeur qui indique si le positionnement du volet Actions est vertical ou horizontal.
Espace de noms : Microsoft.Office.Tools
Assembly : Microsoft.Office.Tools.Common (dans Microsoft.Office.Tools.Common.dll)
Syntaxe
'Déclaration
ReadOnly Property Orientation As Orientation
Get
Orientation Orientation { get; }
Valeur de propriété
Type : System.Windows.Forms.Orientation
Valeur qui indique si le positionnement du volet Actions est vertical ou horizontal.
Notes
Si le volet Actions est flottant, ou est ancré à gauche ou à droite, Orientation est vertical. Si le volet Actions est ancré en bas ou en haut, Orientation est horizontal.
Exemples
L'exemple de code suivant illustre un volet Actions qui ajuste automatiquement l'alignement de son contenu. Lorsque l'utilisateur modifie l'orientation du volet Actions en déplaçant ce dernier vers une autre zone de la fenêtre d'application, ou que l'utilisateur clique sur un contrôle Button dans le volet Actions, la propriété Orientation est utilisée pour déterminer la nouvelle valeur de la propriété StackOrder. Pour exécuter ce code, appelez la méthode InitActionsPane à partir du gestionnaire d'événements ThisWorkbook_Startup d'un projet Microsoft Office Excel.
Private Sub InitActionsPane()
With Globals.ThisWorkbook.ActionsPane
.Clear()
.Visible = True
.AutoRecover = True
End With
AddHandler Globals.ThisWorkbook.ActionsPane.OrientationChanged, _
AddressOf ActionsPane_OrientationChanged
ResetStackOrder()
' Create the button that will update the stack order.
Dim button1 As New Button()
button1.Text = "Change stack order"
AddHandler button1.Click, AddressOf button1_Click
' Create two more buttons that do nothing.
Dim button2 As New Button()
button2.Text = "Button 2"
Dim button3 As New Button()
button3.Text = "Button 3"
Globals.ThisWorkbook.ActionsPane.Controls.AddRange(New Control() _
{button1, button2, button3})
End Sub
' Switch the stack order according to the current orientation.
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
If Globals.ThisWorkbook.ActionsPane.Orientation = _
Orientation.Horizontal Then
If Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromLeft Then
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromRight
Else
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromLeft
End If
Else
If Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromTop Then
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromBottom
Else
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromTop
End If
End If
End Sub
Private Sub ActionsPane_OrientationChanged(ByVal sender As Object, _
ByVal e As EventArgs)
ResetStackOrder()
End Sub
' Readjust the stack order so that it matches the current orientation.
Sub ResetStackOrder()
If Globals.ThisWorkbook.ActionsPane.Orientation = _
Orientation.Horizontal Then
If (Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromTop Or _
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromBottom) Then
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromLeft
End If
End If
If Globals.ThisWorkbook.ActionsPane.Orientation = _
Orientation.Vertical Then
If (Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromLeft Or _
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromRight) Then
Globals.ThisWorkbook.ActionsPane.StackOrder = _
Microsoft.Office.Tools.StackStyle.FromTop
End If
End If
End Sub
private void InitActionsPane()
{
Globals.ThisWorkbook.ActionsPane.Clear();
Globals.ThisWorkbook.ActionsPane.Visible = true;
Globals.ThisWorkbook.ActionsPane.AutoRecover = true;
Globals.ThisWorkbook.ActionsPane.OrientationChanged +=
new EventHandler(ActionsPane_OrientationChanged);
ResetStackOrder();
// Create the button that will update the stack order.
Button button1 = new Button();
button1.Text = "Change stack order";
button1.Click += new EventHandler(button1_Click);
// Create two more buttons that do nothing.
Button button2 = new Button();
button2.Text = "Button 2";
Button button3 = new Button();
button3.Text = "Button 3";
Globals.ThisWorkbook.ActionsPane.Controls.AddRange(
new Control[] { button1, button2, button3 });
}
// Switch the stack order according to the current orientation.
void button1_Click(object sender, EventArgs e)
{
if (Globals.ThisWorkbook.ActionsPane.Orientation ==
Orientation.Horizontal)
{
if (Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromLeft)
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromRight;
}
else
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromLeft;
}
}
else
{
if (Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromTop)
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromBottom;
}
else
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromTop;
}
}
}
void ActionsPane_OrientationChanged(object sender, EventArgs e)
{
ResetStackOrder();
}
// Readjust the stack order so that it matches the current orientation.
void ResetStackOrder()
{
if (Globals.ThisWorkbook.ActionsPane.Orientation ==
Orientation.Horizontal &&
(Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromTop ||
Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromBottom))
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromLeft;
}
if (Globals.ThisWorkbook.ActionsPane.Orientation ==
Orientation.Vertical &&
(Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromLeft ||
Globals.ThisWorkbook.ActionsPane.StackOrder ==
Microsoft.Office.Tools.StackStyle.FromRight))
{
Globals.ThisWorkbook.ActionsPane.StackOrder =
Microsoft.Office.Tools.StackStyle.FromTop;
}
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Voir aussi
Référence
Microsoft.Office.Tools, espace de noms