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 です。
テキストを使用しない場合は、1 つのスペースを使用します。
注釈
Windows 10バージョン 1703 では、キーボード アクセラレータのショートカットが導入されました。 ただし、これらのショートカットは、対応するコントロールの UI では表示されませんでした。
Windows 10 バージョン 1803 以降では、KeyboardAccelerators が宣言されると、コントロールには対応するキーの組み合わせが既定で表示されます。
上書きしたテキストは、取り付けられているキーボードをシステムが検出できない場合は表示されません (取り付けられているキーボードの検出は、KeyboardPresent プロパティを使用して、ご自分で確認することができます)。
バージョンの互換性
KeyboardAcceleratorTextOverride プロパティは、バージョン 1803 より前Windows 10使用できません。 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";
}
}