Partager via


MenuGroup.HasDropDown, propriété

Obtient ou définit une valeur qui indique si les éléments de menu dans la collection Items sont ajoutés à un sous-menu.

Espace de noms :  Microsoft.Windows.Design.Interaction
Assembly :  Microsoft.Windows.Design.Interaction (dans Microsoft.Windows.Design.Interaction.dll)

Syntaxe

'Déclaration
Public Property HasDropDown As Boolean
    Get
    Set
public bool HasDropDown { get; set; }
public:
property bool HasDropDown {
    bool get ();
    void set (bool value);
}
member HasDropDown : bool with get, set
function get HasDropDown () : boolean
function set HasDropDown (value : boolean)

Valeur de propriété

Type : System.Boolean
true si les éléments de menu dans la collection d'éléments vont être ajoutés à un sous-menu ; false si les éléments dans la collection vont être ajoutés directement au menu actuel, avec un séparateur à chaque extrémité.

Notes

Si HasDropDown est true, les éléments de menu dans la collection d'éléments sont ajoutés à un sous-menu. Un élément de menu dont la propriété DisplayName a la valeur MenuGroup est ajouté au menu actuel et les éléments de menu sont ajoutés à un sous-menu. Si HasDropDown est false, les éléments de menu dans la collection sont ajoutés directement au menu actuel, avec un séparateur aux deux extrémités. Prenons par exemple un groupe de menus nommé Mise en page, avec des éléments de menu Aligner à gauche et Aligner à droite. Si HasDropDown est true, un menu Mise en page est ajouté au menu actuel avec les éléments Aligner à gauche et Aligner à droite dans le sous-menu. Si HasDropDown est false, Aligner à gauche et Aligner à droite sont ajoutés au menu actuel avec un séparateur avant Aligner à gauche et un séparateur après Aligner à droite.

Exemples

L'exemple de code suivant indique comment configurer deux éléments MenuAction et les assigner à un MenuGroup. La propriété HasDropDown a la valeur true pour activer le comportement volant. Pour plus d'informations, consultez Procédure pas à pas : création d'un fournisseur de menus.

' The provider's constructor sets up the MenuAction objects 
' and the the MenuGroup which holds them.
Public Sub New()

    ' Set up the MenuAction which sets the control's 
    ' background to Blue.
    setBackgroundToBlueMenuAction = New MenuAction("Blue")
    setBackgroundToBlueMenuAction.Checkable = True
    AddHandler setBackgroundToBlueMenuAction.Execute, AddressOf SetBackgroundToBlue_Execute

    ' Set up the MenuAction which sets the control's 
    ' background to its default value.
    clearBackgroundMenuAction = New MenuAction("Cleared")
    clearBackgroundMenuAction.Checkable = True
    AddHandler clearBackgroundMenuAction.Execute, AddressOf ClearBackground_Execute

    ' Set up the MenuGroup which holds the MenuAction items.
    Dim backgroundFlyoutGroup As New MenuGroup("SetBackgroundsGroup", "Set Background")

    ' If HasDropDown is false, the group appears inline, 
    ' instead of as a flyout. Set to true.
    backgroundFlyoutGroup.HasDropDown = True
    backgroundFlyoutGroup.Items.Add(setBackgroundToBlueMenuAction)
    backgroundFlyoutGroup.Items.Add(clearBackgroundMenuAction)
    Me.Items.Add(backgroundFlyoutGroup)

    ' The UpdateItemStatus event is raised immediately before 
    ' this provider shows its tabs, which provides the opportunity 
    ' to set states.
    AddHandler UpdateItemStatus, AddressOf CustomContextMenuProvider_UpdateItemStatus

End Sub
// The provider's constructor sets up the MenuAction objects 
// and the the MenuGroup which holds them.
public CustomContextMenuProvider()
{   
    // Set up the MenuAction which sets the control's 
    // background to Blue.
    setBackgroundToBlueMenuAction = new MenuAction("Blue");
    setBackgroundToBlueMenuAction.Checkable = true;
    setBackgroundToBlueMenuAction.Execute += 
        new EventHandler<MenuActionEventArgs>(SetBackgroundToBlue_Execute);

    // Set up the MenuAction which sets the control's 
    // background to its default value.
    clearBackgroundMenuAction = new MenuAction("Cleared");
    clearBackgroundMenuAction.Checkable = true;
    clearBackgroundMenuAction.Execute += 
        new EventHandler<MenuActionEventArgs>(ClearBackground_Execute);

    // Set up the MenuGroup which holds the MenuAction items.
    MenuGroup backgroundFlyoutGroup = 
        new MenuGroup("SetBackgroundsGroup", "Set Background");

    // If HasDropDown is false, the group appears inline, 
    // instead of as a flyout. Set to true.
    backgroundFlyoutGroup.HasDropDown = true;
    backgroundFlyoutGroup.Items.Add(setBackgroundToBlueMenuAction);
    backgroundFlyoutGroup.Items.Add(clearBackgroundMenuAction);
    this.Items.Add(backgroundFlyoutGroup);

    // The UpdateItemStatus event is raised immediately before 
    // this provider shows its tabs, which provides the opportunity 
    // to set states.
    UpdateItemStatus += 
        new EventHandler<MenuActionEventArgs>(
            CustomContextMenuProvider_UpdateItemStatus);
}

Sécurité .NET Framework

Voir aussi

Référence

MenuGroup Classe

Microsoft.Windows.Design.Interaction, espace de noms

MenuAction

PrimarySelectionContextMenuProvider

Autres ressources

Procédure pas à pas : création d'un fournisseur de menus