MenuFlyoutItem.KeyboardAcceleratorTextOverride 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
public:
property Platform::String ^ KeyboardAcceleratorTextOverride { Platform::String ^ get(); void set(Platform::String ^ value); };
winrt::hstring KeyboardAcceleratorTextOverride();
void KeyboardAcceleratorTextOverride(winrt::hstring value);
public string KeyboardAcceleratorTextOverride { get; set; }
var string = menuFlyoutItem.keyboardAcceleratorTextOverride;
menuFlyoutItem.keyboardAcceleratorTextOverride = string;
Public Property KeyboardAcceleratorTextOverride As String
属性值
要替换默认组合键字符串的字符串。 默认值为 NULL。
不对文本使用单个空格。
Windows 要求
设备系列 |
Windows 10, version 1803 (在 10.0.17134.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v6.0 中引入)
|
注解
Windows 10版本 1703 引入了键盘快捷键快捷方式。 但是,这些快捷方式未与其相应控件的 UI 一起显示。
从 Windows 10 版本 1803 开始,在声明 KeyboardAccelerators 时,控件默认显示相应的组合键。
如果系统无法检测连接的键盘(你可以通过 KeyboardPresent 属性自行检查),则不显示覆盖文本。
版本兼容性
KeyboardAcceleratorTextOverride 属性在 Windows 10 版本 1803 之前不可用。 如果你的应用在 Microsoft Visual Studio 中的“最低平台版本”设置小于本页稍后的“要求”块中显示的“引入版本”,则必须设计和测试应用以考虑到这一点。 有关详细信息,请参阅 版本自适应代码。
若要避免应用在以前版本的 Windows 10 上运行时出现异常,请勿在 XAML 中设置此属性,或者在不执行运行时检查的情况下使用它。 此示例演示如何使用 ApiInformation 类在设置此属性之前检查此属性是否存在。
<CommandBar x:Name="commandBar1" Loaded="CommandBar_Loaded">
<AppBarToggleButton x:Name="appBarButtonShuffle" Icon="Shuffle" Label="Shuffle"/>
</CommandBar>
<Button Content="Button Flyout">
<Button.Flyout>
<MenuFlyout>
<MenuFlyoutItem x:Name="menuFlyoutItemExample" Text="Item 1" />
<MenuFlyoutItem Text="Item 2" />
<MenuFlyoutSeparator />
<MenuFlyoutSubItem Text="Item 3">
<MenuFlyoutItem Text="Item 4" />
<MenuFlyoutSubItem Text="Item 5">
<MenuFlyoutItem Text="Item 6" />
<MenuFlyoutItem Text="Item 7" />
</MenuFlyoutSubItem>
</MenuFlyoutSubItem>
<MenuFlyoutSeparator />
<ToggleMenuFlyoutItem Text="Toggle Menu Item 1" />
</MenuFlyout>
</Button.Flyout>
</Button>
private void Button_Loaded(object sender, RoutedEventArgs e)
{
if (ApiInformation.IsPropertyPresent("Windows.UI.Xaml.Controls.MenuFlyoutItem", "KeyboardAcceleratorTextOverride"))
{
menuFlyoutItemExample.KeyboardAcceleratorTextOverride = "Ctrl+S";
}
}