0

我的 WPF 应用程序中有一个TextBlock控件。当用户按住 shift 键并右键双击它时,我想显示一个“复活节彩蛋”。

RoutedUiCommand在我的应用程序中添加了一个静态类,在该类中定义了所有命令。我为我的新命令添加了一个命令绑定:

<UserControl.CommandBindings>
    <CommandBinding CanExecute="ShowDiagnostics_CanExecute" Command="cs:CarSystemCommands.ShowDiagnostics"  Executed="ShowDiagnostics_Executed" />
</UserControl.CommandBindings>

当我创建 时RoutedUiCommand,我指定了 a MouseGestureofRightDoubleClick和 a ModifierKeyof Shift。到目前为止,一切都很好。

如何将命令与TextBlock

4

3 回答 3

2

您可以使用此处描述的 InputBindings 和 MouseBinding:http: //thejoyofcode.com/Invoking_a_Command_on_a_Double_Click_or_other_Mouse_Gesture.aspx

于 2013-04-25T08:25:06.323 回答
1

InputBinding放在将调用命令的文本块上怎么样?

于 2013-04-24T22:13:13.960 回答
0

我最终做的是把CommandBindingUserControl.Resources移到TextBlock

<TextBlock ...>
    <TextBlock.CommandBindings>
        <CommandBinding CanExecute="ShowDiagnostics_CanExecute" Command="cs:CarSystemCommands.ShowDiagnostics"  Executed="ShowDiagnostics_Executed" />
    </TextBlock.CommandBindings>
</TextBlock>

现在,直到您按住 shift 键并右键双击TextBlock.

我给其他答案投票,因为它们也会起作用。

于 2013-04-25T12:52:02.100 回答