指定されたイベントからルーティングコマンドを発射する方法は?

StackOverflow https://stackoverflow.com/questions/2743934

  •  02-10-2019
  •  | 
  •  

質問

WPFのコマンドに関する簡単な質問があります。コマンドプロパティにバインドされたicommandを備えたボタンがあり、このボタンをクリックするとコマンドが起動します。

今、私はボタンを押し下げているときに特定のコマンドを開始するのを望んでいます(mouseleftbuttondown イベントだと思いますが、どうすれば1つのボタンに複数のコマンドを配置し、コマンドを開始するイベントを指定するにはわかりません。

何か考えはありますか?多分カスタムコントロール?

助けてくれてありがとう、
アントワーヌ。

役に立ちましたか?

解決

自分のクラスに基づいていることを検討するかもしれません Button そして、あなた自身のセットでそれを拡張します Command, CommandTargetCommandParameter- プロパティのような(おそらく偶数 DependencyProperty. 。コマンドを起動したいときは、これを行うだけです。

 void FireCommand()
 {
    var routedCommand = Command as RoutedCommand;
    if (routedCommand != null)
    {
       routedCommand.Execute(CommandParameter, CommandTarget);
    }
    else if (Command != null)
    {
       Command.Execute(CommandParameter);
    }
 }
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top