/ / WPF MVVMでの動作の使用? - wpf、mvvm

WPF MVVMでの動作の使用? - wpf、mvvm

私はWPF MVVMを初めて使っています。誰でもWPFのMVVMアプリケーションでビヘイビアの使い方をクリアしていますか?なぜ私たちは行かなければならないのですかWPF MVVMのメソッドアクションがあっても動作しますか?

回答:

回答№1は6

ビヘイビアは、要素にアタッチするもので、アプリケーションが応答するタイミングを指定します。

アクションはビヘイビアに添付され、ビヘイビアがトリガされたときにアプリケーションが何をすべきかを定義します。

この記事から:

一見すると、行動はアクション:自己完結型 機能の単位。主な違いは、 呼び出されると、何らかの操作を実行します。 A ビヘイビアには呼び出しの概念がありません。代わりに、それは行動する オブジェクトのアドオンとしての機能:オプション機能 必要に応じてオブジェクトに取り付けられます。それは応答で特定のことをするかもしれません 環境からの刺激へと向かいますが、 ユーザーはこの刺激が何であるかを制御することができます。 作成者はカスタマイズ可能なものと不可能なものを判断します。

そしてこの記事から

ビヘイビアを使用すると、複数の関連アクティビティまたは依存アクティビティをカプセル化できます。 単一の再利用可能なユニットに状態を追加します。


回答№2の場合は0

MVVMでは、ViewModelがメソッドではなくメソッドを公開する場合、Viewからメソッドを呼び出す必要があります。行動はこれを可能にする。

あなたは「我々はWPF MVVMでメソッドアクションを持っている」と述べています。私が知る限り、 "メソッドアクション"はWPFの一部ではありません。ヘルパーMVVMライブラリを使用している場合、メソッド内のメソッドをカプセル化できる「メソッドアクション」が提供される可能性があります。このような場合、メソッドを使用するMVVMパターンにはビヘイビアーは必要ありません。

ただし、その動作にはMVVM以外の用途があります。


回答№3の場合は0

私はこのことを強くお勧めします コードプロジェクトの記事 それ 実証する
- 添付されている動作とは
- それは何の代替案なのですか?
- 同様の問題に対する代替ソリューションと比較して利点があります

アイデアは、添付プロパティを添付されたプロパティを公開するクラスから要素にアクセスできるようにする要素。そのクラスが要素にアクセスできるようになると、その要素にイベントをフックし、発生させるイベントに応答して、要素が通常はしないことを行うようにします。これはサブクラスを作成して使用する非常に便利な代替方法であり、非常にXAMLに適しています。

上記の記事からの結論

オブジェクト上でイベントをフックして何かをする火事が 確かに画期的な革新ではなく、 想像力。その意味では、接続された動作は別の方法です 同じ古いことをやってください。しかし、この技術の重要性は、 それはおそらく最も重要な側面である名前を持っている デザインパターン。さらに、アタッチされたビヘイビアを作成したり、 他の部分を変更することなくそれらを任意の要素に適用する システム。パスカルが提起した問題に対するきれいな解決策です Binggeli、および多くの、他の多くの問題。それは非常に便利なツールです あなたのツールボックスにあります。