問題タブ [datatrigger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2029 参照

.net - WPFでセッターの優先順位をオーバーライドしますか?

次の例の「THIS LINE ####」行を見てください。

次のトリガーを取得して値をオーバーライドするにはどうすればよいですか?

(ところで、上記の例は圧縮されているだけです。(実際のアプリケーションでは、スタイルは独自のリソースにあります。))

0 投票する
4 に答える
18631 参照

wpf - データトリガーでWPFウィンドウの背景を変更するには?

プロパティが変更されたときに、アプリのメイン ウィンドウの背景色を変更したいと考えています。変更可能な営業日があり、予定から変更された場合にウィンドウの背景を変更したい。これを伝えるプロパティを設定しました。しかし、それ自体を変更するウィンドウにスタイル データトリガーを設定できますか? または、app.xaml でこれを行う必要がありますか?

0 投票する
1 に答える
1994 参照

c# - WPF:DataTriggerを使用したカスタムListBoxItem

esListBoxを含むWPFがあります。バインドされた値が更新されたことをViewModelが認識したときに、CheckBoxのテキストの色を赤に変更したいと思います。TextBox以下のXAMLを使用していますが、機能していません。IsUpdatedクエリされているプロパティを確認できますが、値がTrueの場合、色は変化しません。明らかな何かが欠けていると確信していますが、それを完全に理解することはできません。

0 投票する
1 に答える
9030 参照

.net - DataTrigger が起動しない

私は次のxamlを持っています:

これで、2 つのチェックボックスが適切にリンクされます。一方をチェックすると、もう一方がチェックされますが、データトリガーはまったく起動しません。

私は何を間違っていますか?

0 投票する
5 に答える
28398 参照

wpf - オブジェクト タイプに基づく WPF トリガー

トリガーのオブジェクト タイプを比較する方法はありますか?

背景: ツールバーがあり、選択した項目オブジェクトに現在設定されているサブクラスに応じて、ボタンを非表示にしたいと考えています。

ありがとう

0 投票する
4 に答える
4373 参照

wpf - アニメーションとトリガーを再利用可能なリソースとして定義しますか?

アニメーションを xaml のどこかで (たとえば、リソースとして) 一度定義してから、複数回再利用する方法はありますか? データトリガーに基づいて同じ種類のアニメーションを個別に開始する必要がある、さまざまなデータテンプレートにまたがる独立したブラシがたくさんあります。アニメーションは Storyboard.TargetName と Storyboard.TargetProperty を定義する必要があるようです。これは、再利用性の目的をほとんど無効にします。「このアニメーションをリソースから使用するが、今回は別の要素に適用する」と何とか宣言したいと思います。

私には、これはかなり基本的で重要かつ不可欠な要求のように思えますが、達成するのがそれほど簡単ではないことに驚いています。ここで何か不足していますか?

同じことがトリガーにも当てはまります。カラー アニメーションを使用して同じ種類の状態を表すさまざまな視覚要素が多数あるとします。たとえば、「アクティブ」の場合は緑にフェードし、「エラー」の場合は「赤」にフェードします。ビジュアル間の唯一の違いは、形状/ビジュアル ツリーです。目的のアニメーションの動作は同じです。それらはすべて、ビジュアル ツリーのどこかに要素を持っています。 type color のプロパティがあります。同じアニメーションとデータトリガー セットを何度も再定義するのがどれほど面倒かは想像に難くありません。すべての開発者はこれを嫌います。私は、C# のコード ビハインドをまったく (または少なくともほとんど) 必要としない、より簡単なソリューションを必死に探しています。

私がこれまでに思いついたのはこれです:

リソースのアニメーションを次のように定義します (アクティブ化、アクティブ、非アクティブ、エラーなど、存在するすべての基本的な状態に対してこれを繰り返します)。

トリガーのストーリーボードで使用します (各状態 X ごとに異なる状態ビジュアルごとにこれを無数に繰り返し、常にストーリーボードの新しい名前を考え出します):

無数の DataTriggers を繰り返しコピー アンド ペーストしなければならない XAML がどれだけ肥大化しているか容易に想像できます。

このすべてのトリガーを 1 回定義して、さまざまな状態のビジュアルに適用すると便利です。このような問題は WPF でどのように解決されますか? ヒントはありますか?

0 投票する
3 に答える
19770 参照

wpf - WPFアニメーション「スレッド間で使用するためにこのストーリーボードタイムラインツリーをフリーズすることはできません」

現在、選択したアイテムがViewModelのプロパティにバインドされているリストボックスがあります。選択したアイテムがnullでない場合は常に、アニメーションを実行したいと思います。ただし、 「このストーリーボードタイムラインツリーをスレッド間で使用するためにフリーズできません」というエラーが発生し続け、調査から、なぜこれが発生しているのかがわかります。しかし、私は自分が望む行動をとるためにどのようなアプローチを取る必要があるのか​​わかりません。

0 投票する
1 に答える
2693 参照

wpf - 現在の値で始まるアニメーションを開始します (ハンドオフ)。

ビジュアルの色のアニメーション化を開始するいくつかの DataTriggers を含む WPF Datatemplate がありますcolor プロパティが現在持っている実際の値からアニメーションを開始するにはどうすればよいですか?

現在アクティブな別のアニメーションがある可能性があるため、新しいアニメーションを開始することはできませんが、DataTriggers の ExitAction と RemoveStoryboard を使用してアニメーションを削除する、position プロパティがデフォルト値に戻されます。

代わりに、一方を他方に引き継ぎたいと思います。

これは単純に実行できない WPF の制限ですか?

0 投票する
4 に答える
8241 参照

.net - DataTrigger と EventTrigger を組み合わせるには?

関連する質問をしました (受け入れられた回答付き): DataTrigger と Trigger を組み合わせる方法は?

私が求めているものを達成するには、 anEventTriggerと aを組み合わせる必要があると思います:DataTrigger

  • リストボックスにアイテムが表示されると、しばらくの間点滅するはずです
  • アイテムが「クリティカル」の場合は、強調表示されたままにする必要があります

現在、次のような DataTemplate があります。

アイデアは、EventTrigger がHighlight境界線の不透明度を 0 から 1 の間でアニメートし、アイテムが最初にロードされたときに再び元に戻り、ユーザーの注意を引くというものです。はDataTrigger、アニメーション化する回数を決定します。ビューモデルが項目を報告した場合IsCritical、アニメーションは 5.5 回発生し (不透明度 1 で終了)、それ以外の場合は 5 回発生します (不透明度 0 で終了します)。

ただし、DataTrigger のセッターが次のエラーで失敗するため、上記の XAML は機能しません。

「LoadedAnimation」という名前の子が VisualTree に見つかりません。

けっこうだ。では、カスタムの値コンバーターを使用したり、ビュー モデルにアニメーション カウントを配置してバインドしたりすることをためらう場合、どのような選択肢がありますか?

0 投票する
1 に答える
7367 参照

wpf - データトリガーバインディングの何が問題になっていますか?

Buttonクラスを追加の状態で拡張するための添付プロパティを作成しました。

次に、次のようにControlTemplate使用してこの値にアクセスします。DataTrigger

しかし、私はこのエラーを受け取ります:

System.Windows.Dataエラー:4:参照'RelativeSource FindAncestor、AncestorType ='System.Windows.Controls.Button'、AncestorLevel='1''でバインドするためのソースが見つかりません。BindingExpression:Path =(0); DataItem = null; ターゲット要素は'ボタン'(名前=''); ターゲットプロパティは「NoTarget」(タイプ「Object」)です

のバインディング式DataTriggerが正しくないようです。私は何が間違っているのですか?