Condividi tramite


Classe MenuGroup

Rappresenta un gruppo di voci di menu.

Gerarchia di ereditarietà

System.Object
  Microsoft.Windows.Design.Interaction.MenuBase
    Microsoft.Windows.Design.Interaction.MenuGroup

Spazio dei nomi:  Microsoft.Windows.Design.Interaction
Assembly:  Microsoft.Windows.Design.Interaction (in Microsoft.Windows.Design.Interaction.dll)

Sintassi

'Dichiarazione
Public Class MenuGroup _
    Inherits MenuBase
public class MenuGroup : MenuBase
public ref class MenuGroup : public MenuBase
type MenuGroup =  
    class
        inherit MenuBase
    end
public class MenuGroup extends MenuBase

Il tipo MenuGroup espone i seguenti membri.

Costruttori

  Nome Descrizione
Metodo pubblico MenuGroup(String) Inizializza una nuova istanza della classe MenuGroup che ha il nome del gruppo specificato.
Metodo pubblico MenuGroup(String, String) Inizializza una nuova istanza della classe MenuGroup che ha il nome del gruppo e il nome visualizzato specificati.

In alto

Proprietà

  Nome Descrizione
Proprietà pubblica Context Ottiene il contesto di modifica corrente. (Ereditato da MenuBase)
Proprietà pubblica DisplayName Ottiene o imposta il testo localizzato da visualizzare per la voce di menu. (Ereditato da MenuBase)
Proprietà pubblica HasDropDown Ottiene o imposta un valore che indica se le voci di menu nell'insieme Items vengono aggiunte a un sottomenu.
Proprietà pubblica Items Ottiene un elenco di voci di menu da visualizzare come elementi di pari livello all'interno dello stesso gruppo di menu.
Proprietà pubblica Name Ottiene o imposta l'identificatore univoco per la voce di menu. (Ereditato da MenuBase)

In alto

Metodi

  Nome Descrizione
Metodo pubblico Equals Determina se l'oggetto Object specificato è uguale all'oggetto Object corrente. (Ereditato da Object)
Metodo protetto Finalize Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object)
Metodo pubblico GetHashCode Funge da funzione hash per un determinato tipo. (Ereditato da Object)
Metodo pubblico GetType Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object)
Metodo protetto MemberwiseClone Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object)
Metodo protetto OnPropertyChanged Genera l'evento PropertyChanged. (Ereditato da MenuBase)
Metodo pubblico ToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)

In alto

Eventi

  Nome Descrizione
Evento pubblico PropertyChanged Si verifica quando una proprietà è stata modificata. (Ereditato da MenuBase)

In alto

Note

Le voci di menu sono rappresentate dalla classe MenuAction. Un gruppo di menu può includere un insieme di voci di menu direttamente nel menu o come sottomenu, denominato anche menu a comparsa. Impostare la proprietà HasDropDown per visualizzare le voci di menu in un sottomenu.

Per visualizzare le voci di menu di scelta rapida, ereditare dalla classe PrimarySelectionContextMenuProvider e creare elementi MenuAction e un oggetto MenuGroup associato.

Esempi

Nell'esempio di codice seguente viene illustrato come configurare due elementi MenuAction e assegnarli a un oggetto MenuGroup. Per ulteriori informazioni, vedere Procedura dettagliata: creazione di un provider di menu.

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

Codice thread safe

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Vedere anche

Riferimenti

Spazio dei nomi Microsoft.Windows.Design.Interaction

MenuAction

PrimarySelectionContextMenuProvider

Altre risorse

Procedura dettagliata: creazione di un provider di menu