私は質問がありますが、私はMVVMについて多くのチュートリアルを見ましたが、私はまだ混乱しています。 私は、複数のボタンを持つインターフェースを持っています。私は、コマンドをViewにバインドするためのICommandインターフェースを実装する必要があります。インターフェイス内の各ボタンのクラスを作成する必要がありますか?
私はこのようにそれをやった:
MainSolution
Main Solution
Model
SomeClass.cs
ViewModel
Commands
SomeCommands.cs
SomeViewModel.cs
[OK]を、今、私は1つのボタンが複数あるインタフェースで、それぞれが別々のことを行う、たとえば、スレッドを開始するために1がありますそれをキャンセルするための他のものと別のもののための第3のもの。 ViewにあるボタンごとにICommandインターフェイスを実装する別のクラスを作成する必要がありますか?
Main Solution
Model
SomeClass.cs
ViewModel
Commands
StartCommands.cs
CancelCommands.cs
OtherCommands.cs
SomeViewModel.cs
私はICommandのインターフェイスを実装するとき、私は唯一の方法、そして唯一の「CanExecute」方法を「実行」しているので、私はこれを聞いていますのよ。バインディングを通じてビューに複数のボタンを実装する一般的な方法は何ですか?
私は幸運なことなくオンラインで検索しました...それらの多くはとても混乱していて、確かに私のような初心者のためではありません。
もう1つは、複数のViewModelと複数のViewModelがある場合、複数のコマンドフォルダを作成してネストする必要がありますか?
Main Solution
Model
SomeClass.cs
ViewModel
FirstCommands
StartCommands.cs
CancelCommands.cs
OtherCommands.cs
SecondCommands
StartCommands.cs
CancelCommands.cs
OtherCommands.cs
FirstViewModel.cs
SecondViewModel.cs
なぜRelayCommandも「タイプ」を受け入れますか?(RelayCommand)、これで何ができますか?何の一種? –
exSnake
パラメータ。 http://stackoverflow.com/questions/32064308/how-to-pass-command-parameter-to-method-in-viewmodel-in-wpfを参照してください。 – decPL