問題タブ [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.
.net - WPFでセッターの優先順位をオーバーライドしますか?
次の例の「THIS LINE ####」行を見てください。
次のトリガーを取得して値をオーバーライドするにはどうすればよいですか?
(ところで、上記の例は圧縮されているだけです。(実際のアプリケーションでは、スタイルは独自のリソースにあります。))
wpf - データトリガーでWPFウィンドウの背景を変更するには?
プロパティが変更されたときに、アプリのメイン ウィンドウの背景色を変更したいと考えています。変更可能な営業日があり、予定から変更された場合にウィンドウの背景を変更したい。これを伝えるプロパティを設定しました。しかし、それ自体を変更するウィンドウにスタイル データトリガーを設定できますか? または、app.xaml でこれを行う必要がありますか?
c# - WPF:DataTriggerを使用したカスタムListBoxItem
esListBox
を含むWPFがあります。バインドされた値が更新されたことをViewModelが認識したときに、CheckBox
のテキストの色を赤に変更したいと思います。TextBox
以下のXAMLを使用していますが、機能していません。IsUpdated
クエリされているプロパティを確認できますが、値がTrue
の場合、色は変化しません。明らかな何かが欠けていると確信していますが、それを完全に理解することはできません。
.net - DataTrigger が起動しない
私は次のxamlを持っています:
これで、2 つのチェックボックスが適切にリンクされます。一方をチェックすると、もう一方がチェックされますが、データトリガーはまったく起動しません。
私は何を間違っていますか?
wpf - オブジェクト タイプに基づく WPF トリガー
トリガーのオブジェクト タイプを比較する方法はありますか?
背景: ツールバーがあり、選択した項目オブジェクトに現在設定されているサブクラスに応じて、ボタンを非表示にしたいと考えています。
ありがとう
wpf - アニメーションとトリガーを再利用可能なリソースとして定義しますか?
アニメーションを xaml のどこかで (たとえば、リソースとして) 一度定義してから、複数回再利用する方法はありますか? データトリガーに基づいて同じ種類のアニメーションを個別に開始する必要がある、さまざまなデータテンプレートにまたがる独立したブラシがたくさんあります。アニメーションは Storyboard.TargetName と Storyboard.TargetProperty を定義する必要があるようです。これは、再利用性の目的をほとんど無効にします。「このアニメーションをリソースから使用するが、今回は別の要素に適用する」と何とか宣言したいと思います。
私には、これはかなり基本的で重要かつ不可欠な要求のように思えますが、達成するのがそれほど簡単ではないことに驚いています。ここで何か不足していますか?
同じことがトリガーにも当てはまります。カラー アニメーションを使用して同じ種類の状態を表すさまざまな視覚要素が多数あるとします。たとえば、「アクティブ」の場合は緑にフェードし、「エラー」の場合は「赤」にフェードします。ビジュアル間の唯一の違いは、形状/ビジュアル ツリーです。目的のアニメーションの動作は同じです。それらはすべて、ビジュアル ツリーのどこかに要素を持っています。 type color のプロパティがあります。同じアニメーションとデータトリガー セットを何度も再定義するのがどれほど面倒かは想像に難くありません。すべての開発者はこれを嫌います。私は、C# のコード ビハインドをまったく (または少なくともほとんど) 必要としない、より簡単なソリューションを必死に探しています。
私がこれまでに思いついたのはこれです:
リソースのアニメーションを次のように定義します (アクティブ化、アクティブ、非アクティブ、エラーなど、存在するすべての基本的な状態に対してこれを繰り返します)。
トリガーのストーリーボードで使用します (各状態 X ごとに異なる状態ビジュアルごとにこれを無数に繰り返し、常にストーリーボードの新しい名前を考え出します):
無数の DataTriggers を繰り返しコピー アンド ペーストしなければならない XAML がどれだけ肥大化しているか容易に想像できます。
このすべてのトリガーを 1 回定義して、さまざまな状態のビジュアルに適用すると便利です。このような問題は WPF でどのように解決されますか? ヒントはありますか?
wpf - WPFアニメーション「スレッド間で使用するためにこのストーリーボードタイムラインツリーをフリーズすることはできません」
現在、選択したアイテムがViewModelのプロパティにバインドされているリストボックスがあります。選択したアイテムがnullでない場合は常に、アニメーションを実行したいと思います。ただし、 「このストーリーボードタイムラインツリーをスレッド間で使用するためにフリーズできません」というエラーが発生し続け、調査から、なぜこれが発生しているのかがわかります。しかし、私は自分が望む行動をとるためにどのようなアプローチを取る必要があるのかわかりません。
wpf - 現在の値で始まるアニメーションを開始します (ハンドオフ)。
ビジュアルの色のアニメーション化を開始するいくつかの DataTriggers を含む WPF Datatemplate があります。color プロパティが現在持っている実際の値からアニメーションを開始するにはどうすればよいですか?
現在アクティブな別のアニメーションがある可能性があるため、新しいアニメーションを開始することはできませんが、DataTriggers の ExitAction と RemoveStoryboard を使用してアニメーションを削除すると、position プロパティがデフォルト値に戻されます。
代わりに、一方を他方に引き継ぎたいと思います。
これは単純に実行できない WPF の制限ですか?
.net - DataTrigger と EventTrigger を組み合わせるには?
注関連する質問をしました (受け入れられた回答付き): DataTrigger と Trigger を組み合わせる方法は?
私が求めているものを達成するには、 anEventTrigger
と aを組み合わせる必要があると思います:DataTrigger
- リストボックスにアイテムが表示されると、しばらくの間点滅するはずです
- アイテムが「クリティカル」の場合は、強調表示されたままにする必要があります
現在、次のような DataTemplate があります。
アイデアは、EventTrigger がHighlight
境界線の不透明度を 0 から 1 の間でアニメートし、アイテムが最初にロードされたときに再び元に戻り、ユーザーの注意を引くというものです。はDataTrigger
、アニメーション化する回数を決定します。ビューモデルが項目を報告した場合IsCritical
、アニメーションは 5.5 回発生し (不透明度 1 で終了)、それ以外の場合は 5 回発生します (不透明度 0 で終了します)。
ただし、DataTrigger のセッターが次のエラーで失敗するため、上記の XAML は機能しません。
「LoadedAnimation」という名前の子が VisualTree に見つかりません。
けっこうだ。では、カスタムの値コンバーターを使用したり、ビュー モデルにアニメーション カウントを配置してバインドしたりすることをためらう場合、どのような選択肢がありますか?