Menügruppe
Die Menügruppe organisiert verwandte Befehle und Steuerelemente innerhalb eines Menüs oder einer Symbolleiste.
Einführung
Das Menügruppen-Steuerelement, das über das MenuGroup-Markupelement verfügbar gemacht wird, ist ein logischer Container für Gruppen von Elementen oder Befehle in menübasierten Steuerelementen, einschließlich der Kontext-Popup-Minisymbolleiste.
Eine Bezeichnung kann für eine Menügruppe über das LabelTitle-Attribut oder die Command.LabelTitle-Eigenschaft einer zugeordneten Command-Deklaration angegeben werden. Der LabelTitle zugewiesene Wert wird als Kategorieheader gerendert.
Im folgenden Beispiel wird das Befehlsmarkup für ein Steuerelement "Schaltfläche teilen" veranschaulicht, das zwei Befehlsdeklarationen für Menügruppen enthält.
<!-- SplitButton -->
<Command Name="cmdSplitButtonGroup"
Symbol="cmdSplitButtonGroup"
Comment="SplitButton Group"
LabelTitle="SplitButton"/>
<Command Name="cmdSplitButton"
Symbol="cmdSplitButton"
Comment="SplitButton"
LabelTitle="SplitButton"/>
<Command Name="cmdSBButtonItem"
Symbol="cmdSBButtonItem"
Comment="SBButtonItem"
LabelTitle="SB ButtonItem"/>
<Command Name="cmdSBButton1"
Symbol="cmdSBButton1"
Comment="SBButton1"
LabelTitle="SB Button">
<Command.LargeImages>
<Image Source="res/copyL_32.bmp"/>
</Command.LargeImages>
<Command.SmallImages>
<Image Source="res/copyS_16.bmp"/>
</Command.SmallImages>
<Command.LargeHighContrastImages>
<Image Source="res/copyLHC_32.bmp"/>
</Command.LargeHighContrastImages>
<Command.SmallHighContrastImages>
<Image Source="res/copySHC_16.bmp"/>
</Command.SmallHighContrastImages>
</Command>
<Command Name="cmdSBMajorItems"
Comment="Major Items Category"
LabelTitle="Major Items"/>
<Command Name="cmdSBStandardItems"
Comment="Standard Items Category"
LabelTitle="Standard Items"/>
Im folgenden Beispiel wird das Markup veranschaulicht, das für ein SplitButton-Element mit drei MenuGroup-Elementdeklarationen erforderlich ist, von denen zwei den Menügruppenbefehlen aus dem vorherigen Beispiel zugeordnet sind. Das Class-Attribut des MenuGroup-Elements wird verwendet, um die Größe der Menüelemente anzugeben.
<Group CommandName="cmdSplitButtonGroup">
<SplitButton CommandName="cmdSplitButton">
<SplitButton.ButtonItem>
<Button CommandName="cmdSBButtonItem"/>
</SplitButton.ButtonItem>
<SplitButton.MenuGroups>
<MenuGroup CommandName="cmdSBMajorItems"
Class="MajorItems">
<Button CommandName="cmdSBButton1"/>
<Button CommandName="cmdSBButton1"/>
</MenuGroup>
<MenuGroup CommandName="cmdSBStandardItems"
Class="StandardItems">
<Button CommandName="cmdSBButton1"/>
<Button CommandName="cmdSBButton1"/>
</MenuGroup>
<MenuGroup Class="StandardItems">
<Button CommandName="cmdSBButton1"/>
<Button CommandName="cmdSBButton1"/>
</MenuGroup>
</SplitButton.MenuGroups>
</SplitButton>
</Group>
Der folgende Screenshot veranschaulicht das Menü (mit drei Menügruppen-Steuerelementen), das aus dem Markup in den vorherigen Beispielen generiert wird.

Menügruppeneigenschaften
Das Menübandframework definiert eine Auflistung von Eigenschaftsschlüsseln für das Menügruppen-Steuerelement.
In der Regel wird eine Menügruppeneigenschaft auf der Menübandbenutzeroberfläche aktualisiert, indem der dem Steuerelement zugeordnete Befehl durch einen Aufruf der IUIFramework::InvalidateUICommand-Methode ungültig wird. Das Invalidierungsereignis wird von der IUICommandHandler::UpdateProperty-Rückrufmethode behandelt und die Eigenschaft aktualisiert.
Die IUICommandHandler::UpdateProperty-Rückrufmethode wird nicht ausgeführt, und die Anwendung fragt einen aktualisierten Eigenschaftswert ab, bis die Eigenschaft vom Framework benötigt wird. Beispielsweise, wenn eine Registerkarte aktiviert und ein Steuerelement auf der Menüband-Benutzeroberfläche angezeigt wird oder wenn eine QuickInfo angezeigt wird.
Hinweis
In einigen Fällen kann eine Eigenschaft über die IUIFramework::GetUICommandProperty-Methode abgerufen und mit der IUIFramework::SetUICommandProperty-Methode festgelegt werden.
In der folgenden Tabelle sind die Eigenschaftenschlüssel aufgeführt, die dem Menügruppen-Steuerelement zugeordnet sind.
| Eigenschaftenschlüssel | Notizen |
|---|---|
| _Benutzeroberflächen-PKEY _ aktiviert | Unterstützt IUIFramework::GetUICommandProperty und IUIFramework::SetUICommandProperty. |
| _PKEY-Keytip der Benutzeroberfläche _ | Kann nur durch Ungültigkeit aktualisiert werden. |
| _ _ UI-PKEY-Bezeichnung | Kann nur durch Ungültigkeit aktualisiert werden. |
| UI _ PKEY _ TooltipDescription | Kann nur durch Ungültigkeit aktualisiert werden. |
| UI _ PKEY _ TooltipTitle | Kann nur durch Ungültigkeit aktualisiert werden. |