0

クラスと 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 つだけ使用できます。前もって感謝します。

4

0 に答える 0