2

私のviewModelへのXAML経由のWPFでは、キャンバス上でのマウスの動きを検出し、マウスの左ボタンが押されたときにのみ反応したいと考えています。具体的には、マウスの位置やマウス ボタンの状態など、viewModel のメソッドからイベントを取得したいと考えています。誰かがこれで私を助けることができますか?

コード ビハインドで通常の WPF イベントを使用できることはわかっていますが、それを行うと、私の意見では "降伏" し、XAML の学習曲線に降伏することになるため、それは最後の手段です。

この質問を見つけましたが、Expression Blend を購入する余裕がないため、役に立ちません: WPF マウス オーバー

覗き込んだ

<EventTrigger RoutedEvent="Canvas.MouseMove"> . . ., 

しかし、それはアニメーション専用のようです。

これは、人々がやりたいと思う一般的なことのようですが、何も見つかりません。

4

2 に答える 2

3

コマンドを受け入れて発生させるキャンバスのアタッチされた動作を作成すると、ビューモデルがそのコマンドをサブスクライブしてアクションを実行します。

于 2012-10-24T03:36:59.283 に答える
0

最初に: Expression Blend は必要ありません。必要なのは SDK だけです。

または mvvm light フレームワークを見ると、 EventToCommand の動作もあります

于 2012-10-24T06:29:55.217 に答える