クラスと XAML でRoutedCommandを定義しました
Public Shared CustomCommandShowAll As New RoutedCommand
Public Shared CustomCommandFirstPage As New RoutedCommand
Public Shared CustomCommandSecondPage As New RoutedCommand
<Window.CommandBindings>
<CommandBinding Command="local:DynamicTab.CustomCommandShowAll" Executed="ShowAll_Executed" />
<CommandBinding Command="local:DynamicTab.CustomCommandFirstPage" Executed="FirstPage_Executed" />
<CommandBinding Command="local:DynamicTab.CustomCommandSecondPage" Executed="Secondpage_Executed" />
</Window.CommandBindings>
<Window.InputBindings>
<KeyBinding Command="local:DynamicTab.CustomCommandShowAll" Key="F1" Modifiers="Alt"/>
<KeyBinding Command="local:DynamicTab.CustomCommandFirstPage" Key="F2" Modifiers="Alt"/>
<KeyBinding Command="local:DynamicTab.CustomCommandSecondPage" Key="F3" Modifiers="Alt"/>
</Window.InputBindings>
これらのバインディングはMenuitemによって接続されます
<Menu DockPanel.Dock="Top" >
<MenuItem x:Name="filtermenu" Header="_FilterType" BorderBrush="White" >
<MenuItem Header="ShowAll" IsChecked="True" InputGestureText="Alt+F1"/>
<MenuItem Header="FirstPage" InputGestureText="Alt+F2"/>
<MenuItem Header="Secondpage" InputGestureText="Alt+F3"/>
</MenuItem>
</Menu>
今、私が押すALT+F1と、ShowAll_Executed
メソッドが呼び出され、ここに2つのパラメーターがありますByVal sender As System.Object, ByVal e As System.Windows.Input.ExecutedRoutedEventArgs
Private Sub ShowAll_Executed(ByVal sender As System.Object, ByVal e As System.Windows.Input.ExecutedRoutedEventArgs)
End Sub
これら 2 つのパラメーターからShowAll * MenuItem Header Name *を取得する方法がわかりません。値を取得した場合、3 つのすべての MenuItem に対してRoutedCommandを 1 つだけ使用できます。前もって感謝します。