1

私は DataGrid を使用しています。

現在、次の XAML があります。

<dg:DataGrid lc:DataGridPackage.QueryGrid="{Binding myGrid}">
    ...
    <dg:DataGrid.Resources>
        <lc:CommandReference x:Key="myCommand" Command="{Binding myCommandActionItem}" />
    </dg:DataGrid.Resources>

    <dg:DataGrid.InputBindings>
        <KeyBinding Modifiers="Control" Key="D" Command="{StaticResource myCommand}" />

それは正常に動作します。データグリッドの行をクリックし、Ctrl+D を押すと、コマンドが実行されます (この場合は、行を更新します)。

ただし、KeyBinding を MouseBinding に変更すると、次のようになります。

<MouseBinding MouseAction="LeftDoubleClick" Command="{StaticResource myCommand}"> 

「タイプ 'MouseBinding' の 'Command' プロパティに 'Binding' を設定することはできません。'Binding' は DependencyObject の DependencyProperty にのみ設定できます」というエラーが表示されます。

私は何を間違っていますか?

4

2 に答える 2

0

すべてのイベントをビヘイビアでバインディング シチュエーションに処理しないのはなぜですか? このようにして、イベントを簡単に割り当て、修飾子をチェックし、ビューモデルにコマンドを送信できます。

必要に応じて、このシナリオのコードを提供できます。

于 2013-04-25T13:28:39.770 に答える