0

オブジェクトの選択を処理する責任が追加された MvvmLight.ViewModelBase から派生した基本クラスがあります。このクラスはRelayCommand<MouseButtonEventArgs>、View にバインドされるプロパティを定義します。

        <i:Interaction.Triggers>
            <i:EventTrigger EventName="MouseDown">
                <galaxcmd:EventToCommand Command="{Binding SelectCommand,Mode=OneWay}" PassEventArgsToCommand="True"  />
            </i:EventTrigger>
        </i:Interaction.Triggers>

このビューは、マウスダウンも処理する必要がある包含ビュー内で複数回使用されます。含まれているビューによって処理された場合、コンテナーでマウスダウンを処理したくないため、私の問題が発生します。子 VM を設定するだけの予定だったので、PassEventArgsToCommand がこの問題の解決策だと思いましたMouseButtonEventArgs.Handled = true。残念ながら、MouseButtonEventArgs 引数は常に null です。念のため、RoutedEventArgs と EventArgs も試しましたが、それらもすべて null です。

EventToCommand (または EventTrigger?) の何が間違っていますか?

4

1 に答える 1

0

ここでは、Galasofts のものに基づいて、変更された実装を見つけることができます。ここでは、 asを設定してイベント ルーティングを停止できます。EventToCommandEventargsCommandParameter

于 2012-09-11T08:52:06.390 に答える