/ /トリガVSコンバータ - c#、xaml

トリガVSコンバーター - c#、xaml

まず第一に、私はトリガとコンバータの両方を使用することを知っていますが、私はまだ答えがわからないといういくつかの質問があります。

  1. コンバータよりもトリガを使用する方が望ましいでしょうか?
  2. より良いパフォーマンス - トリガーまたはコンバーターとは何ですか?
  3. コンバータが行うことはすべて、トリガとその逆を行うことができますか?

もう1つ、トリガーはあまり良くありませんなぜなら、XAMLにロジックを書き込んでいるのです。これは間違っており、多くの場合読み込みができません。特に、1ページに多くのトリガを書き込むと、コンバーターを使用するほうが時間がかかります。私の意見は正しいと思いますか?

回答:

回答№1は1

コンバーターはあなたのUIに表示してユーザーと対話できる形式に変換することができます。たとえば、列挙型をコンボボックスの選択された値に変更するか、ブール値を「可視」/「不可視」に変更するコンバータを使用するか、コンバーターを使用して異なるパーツの表示と非表示を切り替えたり、プロパティが特定の値を持つときのUIの値。

トリガを使用すると、プロパティの値の変更に基づいてUIの他の部分を変更できます。これには次のようなものが含まれます:

  • UIの他の部分を強調表示する(例えば色を変更する)
  • アニメーションを開始する

いくつかのオーバーラップがありますが、UIへの変更が静的な場合はコンバーターを使用します。タブは 常に モードが特定の値に設定されていると無効になりますが、トリガーはユーザーの操作によってトリガーされるよりダイナミックな変更(ハイライト、アニメーションなど)用です。

あなたが言うように、トリガはロジックをUIに入れていますが、モデル自体の変更をトリガするのではなく、何らかの方法でUIを変更するだけのロジックに使用します。