問題タブ [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 投票する
1 に答える
3297 参照

wpf - WPFデータトリガーとコントロールのスタイルの変更

カスタム検証エンジンを使用して、ViewModelプロパティを検証しています。私は最後のステップで立ち往生しています。TextBox検証に失敗したときの背景色を変更したい。そこで、DataTriggersを実装し、HasErrorプロパティにバインドしました。HasErrorは通常のCLRプロパティです。

そしてここにコードがあります:

this.DataContext問題は、がビューモデルに割り当てられたときに1回だけ起動されることです。したがって、通常のプロパティの代わりにDependencyプロパティを使用できるのではないかと思いましたが、それもうまくいきませんでした。

何か案は?

アップデート:

DataTriggersは、依存関係プロパティではなく、CLRプロパティにフックされた場合にのみ発生するようです。

更新2:

次のコードのみが機能した場合:

アップデート3の動作:

答えが述べたように、私はINotifyPropertyChangedイベントを解雇しなければなりませんでした。

publicObservableCollectionエラー{get{return(ObservableCollection)GetValue(ErrorsProperty); } set {SetValue(ErrorsProperty、value);

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

wpf - コレクションへの MultiDataTrigger バインディングおよびコレクション内のプロパティへのバインディング

次の XAML があります。

エラーはObservableCollection<BrokenRule>. BrokenRule には、HasError というプロパティがあります。今、その HasError プロパティにバインドしたいのですが、XAML でそれを参照する方法がわかりません。

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

wpf - MultiDataTrigger を使用して、WPF の Style.Triggers で単一の条件が true であることを確認する方法は?

UserControl に 3 つのグリッドがあり、そのうちの 1 つのコントロールが一度に表示されます。最後の列では、データをチェックして ForeGround カラーを適用する必要がある Style を使用する必要があります。を使用して、3 つのグリッドの各コントロールにスタイルを記述できますDataTriggers。しかし、どこでも使用できる Resource の具体的なスタイルが必要です。私は試しMultiDataTriggerましたが、2 つ以上の条件が true であることをチェックするのMultiDataTrigger.Conditionsに対し、1 つのコントロールでデータをチェックする必要があるため、目的を果たしません。これを達成するための代替ソリューションはありますか?

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

c# - ComboBox のコンテンツから RadioButton の IsChecked プロパティを宣言的に設定する方法は?

a1、a2、a3、a4 のアイテムを持つコンボ ボックスがあり、r1 と r2 の 2 つの RadioButton があります。これが私が達成したいことです: ユーザーがコンボボックスから項目 a2 を選択した場合、r1 の IsChecked プロパティを true に設定する必要があります。ユーザーがコンボボックスから項目 a3 または a4 を選択した場合、r2 の IsChecked プロパティを true に設定する必要があります。これを宣言的に達成したいと思います。つまり、コンバーターを使用しません。これが私のコードです。事前に感謝します:

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

wpf - ItemsControl (WPF) に表示されるアイテムのフィルタリングをアニメーション化する方法

ItemsControl現在、主にいくつかのアイテムを表示するだけのコントロールを作成しています。さらに、ユーザーがその中のアイテムをフィルタリングできるようにするいくつかのコントロールがありますItemsControl

私がやろうとしているのは、フィルターが適用されたときにどのアイテムが削除されるかをユーザーにわかりやすくすることです。

そのため、実際に をフィルタリングする代わりに、各アイテムに使用される VM にICollectionView新しいプロパティを導入しました。IsVisible次に、 にScaleTransformasLayoutTransformを追加し、変換をアニメーション化するためにDataTemplatea を追加しました。DataTrigger

ユーザーがフィルター処理を行うと、すべてが正常に機能します。Storyboardしかし、私が抱えている問題は、ユーザーが何かをフィルタリングしたにもかかわらず、リスト内で何かが変更された場合 (新しい項目を追加するなど)が再度適用されることです。

その理由は、リストが変更された後、DataTemplate「1」の ScaleY で が再作成され、次にDataTriggerが再度適用され、スコアボードが再度適用されるためです。

この場合、アニメーションが発生しないことを望みます。

これを行う方法はありますか?ティア・マーティン

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

.net - DataTrigger条件でのバインディングの使用

次の簡単なクラスがあるとしましょう。

これで、PersonH​​olderクラスのインスタンスをとして持つDataContextグリッドができました。グリッドには、のStackPanelにバインドされたがあり、そのデータを示していますCurrentPersonPersonHolder

だから-質問に:が一致する場合、どうすればStackPanel緑の背景を与えることができますか(ええ、非常に便利ですが、これは非常に単純化された例です..)。これはトリガーを使用するものだと思いますが、トリガー条件の値にバインディングを使用できますか?もしそうなら、私はこのようなことをすることができます:CurrentPersonIdActiveIdPersonHolder

しかし、これは機能しません。どうすればこれを解決できますか?

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

.net - StackPanelのDataTriggerを定義する

DataTriggerのを定義するにはどうすればよいStackPanelですか?プロパティはありTriggerますが、ここでトリガーを定義すると、アプリケーションの起動時に初期化時に次のエラーが発生します。

オブジェクトの初期化に失敗しました(ISupportInitialize.EndInit)。トリガーコレクションのメンバーは、EventTriggerタイプである必要があります。...。

これは次の簡単なものから与えられますDataTrigger

これは私の初めてTriggerです、それで私は何を間違えますか?他の場所を定義する必要がありTriggerますか?

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

wpf - WPF の DataTrigger での XML へのデータ バインディング

WPF アプリケーションでは、次のような XML ノードに DataTemplate を正しくバインドしました。

私のアプリケーションには、答えを含む TextBlock があります。最初は非表示にしたいのですが、XML ファイルの正しい属性が "true" に変更されたときに表示される必要があります。

他のすべてが機能するため、DataTemplate は正しく接続されています。たとえば、XML ファイルの answer 属性を (テストのためだけに) 変更すると、WPF ビューで変更されます。しかし、視界に問題があります。これは私のXAMLです:

DataTrigger の Databinding が正しく機能していないと思います。誰にも手がかりがありますか?