Группа меню
Группа меню упорядочивает связанные команды и элементы управления в меню или на панели инструментов.
Введение
Элемент управления "Группа меню", предоставляемый с помощью элемента разметки MenuGroup , является логическим контейнером для групп элементов или команд в элементах управления на основе меню, включая контекстную мини-панель инструментов.
Метку можно указать для группы меню с помощью атрибута LabelTitle или свойства Command.LabelTitle связанного объявления Command. Значение, присвоенное LabelTitle , отображается в виде заголовка категории.
В следующем примере показана разметка Command для элемента управления "Разделить кнопку ", который включает два объявления команд группы меню.
<!-- 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"/>
В следующем примере показана разметка, необходимая для элемента SplitButton с тремя объявлениями элементов MenuGroup , два из которых связаны с командами группы меню из предыдущего примера. Атрибут Class элемента MenuGroup используется для указания размера элементов меню.
<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>
На следующем снимке экрана показано меню (с тремя элементами управления "Группа меню"), созданное на основе разметки в предыдущих примерах.
Свойства группы меню
Платформа ленты определяет коллекцию ключей свойств для элемента управления "Группа меню".
Как правило, свойство Группы меню обновляется в пользовательском интерфейсе ленты путем отмены команды, связанной с элементом управления, путем вызова метода IUIFramework::InvalidateUICommand . Событие недействительности обрабатывается и свойство обновляется с помощью метода обратного вызова IUICommandHandler::UpdateProperty .
Метод обратного вызова IUICommandHandler::UpdateProperty не выполняется, и приложение запросит обновленное значение свойства, пока свойство не потребуется платформе. Например, при активации вкладки и отображении элемента управления в пользовательском интерфейсе ленты или при отображении подсказки.
Примечание
В некоторых случаях свойство можно получить с помощью метода IUIFramework::GetUICommandProperty и задать с помощью метода IUIFramework::SetUICommandProperty .
В следующей таблице перечислены ключи свойств, связанные с элементом управления "Группа меню".
Ключ свойства | Примечания |
---|---|
UI_PKEY_Enabled | Поддерживает IUIFramework::GetUICommandProperty и IUIFramework::SetUICommandProperty. |
UI_PKEY_Keytip | Может быть обновлено только через недействительность. |
UI_PKEY_Label | Может быть обновлено только через недействительность. |
UI_PKEY_TooltipDescription | Может быть обновлено только через недействительность. |
UI_PKEY_TooltipTitle | Может быть обновлено только через недействительность. |
Связанные темы