問題タブ [multibinding]

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 に答える
13275 参照

.net - マルチバインディングコンバーターとトリガーをスタイリッシュにミキシング中に問題が発生する

でスタイルを設定し<UserControl.Resources>ます(コンバーターが赤を返すと仮定します)

とコントロール:

期待される結果はFirstName、MultiBindingコンバーターが背景色を赤に変更すると、フィールドがフォーカスを取得し、前景色が白に変更されることですが、フィールドの背景が赤に変更されても、フォーカスも新しい前景色も取得されません。 。

XAMLパーサーは、プロパティセッターのMultiBindingコンバーターのにトリガーを処理しているように見えます。

ありとあらゆる提案を歓迎します!

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

wpf - リスト ビュー内のマルチバインディング

いくつかの列を持つ ListView があります。各 GridViewColumn をプロパティにバインドしても問題ありません。たとえば、次のようになります。

GridViewColumn を 2 つのプロパティにマルチバインドしようとすると、問題が発生します。

私が使用するコンバーターは次のとおりです。

「IsHighestScoreApplicable」プロパティがfalseの場合-リストビューに何も表示されず(空)、trueの場合-HighestScore値が表示されますが、うまくいきません-私が得るのは''IsHighestScoreApplicable' が true の場合でも空の列。さらに、Convert() メソッドをデバッグすると、if ステートメントが次のようになっていることがわかります。

保持され、戻り値は int_value ですが、それでもリスト ビューには何も表示されません。

どうしたの?

万歳、デイブ

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

wpf - WPFスタイルを使用して、反復的なマルチバインディングを簡素化します

いくつかのテストの結果を表示しています。各テストには2つの変数があり、表示される結果のテキストと色は両方によって異なります。私はこれを機能させていますが、繰り返しマルチバインディングが行われているので、スタイルを使用してXAMLを単純化する方法があるかどうかを確認したいと思います。

これが私のコードがどのように見えるかを簡単に示したものです:

MultiBindingsをTextBlockに簡単に適用できるように、スタイルを定義したいと思います。それぞれの唯一の違いは、バインディングパスの値で指定するテストです。私の目標は次のようになります。

これに似たものはありますか?

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

wpf - マルチバインディングがWPFでサポートされているのに、Silverlightではサポートされていないのはなぜですか?

マルチバインディングはWPFの非常に強力な機能ですが、Silverlightでサポートされていないのはなぜですか?彼らはそれにサポートを追加することを決して回避しませんでしたか?大きすぎて.NETFrameworkに収まりませんか?Silverlight 5で提供される予定ですか?誰もが答えを知っていますか?

ありがとう!

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

wpf - ToolTip 内で Converter を使用した MultiBinding が機能しないのはなぜですか?

かなり複雑な WPF ToolTip の一部として、MultiBinding を使用して、2 つのプロパティに基づいて書式設定されたテキストを生成しようとしています。問題は、バインディングの MultiConverterが配列DependencyProperty.UnsetValue内の各項目を受け取ることです。values

以下は、単一の を使用して機能しますBinding

MultiBindingwithを使用すると、次のようになりStringFormatます。

しかし、 aMultiBindingと aConverterは違います:

最後の例のバインディングは値を受け取りません。これは ToolTip 以外では当てはまりません。この特定のケースでバインドが失敗するのはなぜですか?

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

c# - 2つのプロパティを==>単一のコントロールにバインドする

私が財産を持っているとしましょう

FIrstNameLastName

私はそれを単一でバインドする必要がありtextboxます。

したがって、1つのテキストボックスでとの両方 FirstNameを表示できますLastName

では、どうすればそれが可能になるのでしょうか。

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

wpf - MultiBindingConvertor が WPF MVVM アプリケーションのグリッドで動作しない

2 つのことに基づいて制限する必要がある WPF Telerik グリッドに列があります。

ViewModel の IsEditable プロパティと、グリッドがバインドされているリストのプロパティである IsManualChange プロパティ ...

これを処理するために MultiBoolConvertor を作成し、次のように WPF に実装しました。

ただし、Convertor に渡される値は、(ViewModel からの) bool と、IsManualChange! からの DependencyProperty.UnsetValue です。

2 番目の値は明らかに「values[1] is bool」の比較に失敗します

手がかりは、私が期待するように、コンバーターが1行ごとではなく、1回だけ呼び出されていることです。

どうすればこれを機能させることができるか知っている人はいますか?

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

wpf - この MultiBinding で ConvertBack が呼び出されないのはなぜですか?

私のコンボボックス リストの Contacts は、MultiBinding を使用して FullName と PhoneExtension の両方にバインドされています。IMul​​tiValueConverter の Convert メソッドが呼び出されますが、ConvertBack は呼び出されません。なんで?コンボボックスはリストを正しく表示しますが、選択は保存されません。タブを離すと消えます。

バックグラウンド:

1) 連絡先リストは Web サービスから取得され、コード ビハインドの監視可能なコレクション ContactListObservable に配置されます。ViewModel は使用していません。

2) コンボボックスは、UserControl にあるデータグリッドにあります。それが、この奇抜なバインディングの理由です。ItemsSource="{Binding ContactListObservable, RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}}"

3) IMultiValueConverter は、UserControl.Resources で参照されるクラスです。<local:CombineNameAndPhoneExtensionMultiConverter x:Key="combinedNameAndPhoneExtensionConverter"/>

4) 連絡先リストにないレガシー データを表示する必要があります。これは、値を表示するための TextBlock と編集用の ComboBox を組み合わせることによって、DataGridTemplateColumn で実現されます。この Julie Lerman MSDN 記事を参照してください。

これがクレイジーな XAML です。

私はこれにあまりにも多くの時間を費やしてきたので、あなたが提供できる助けに大いに感謝します.

その他の背景:

私のコンボボックスを含むデータグリッドには、行ごとに 1 つのエンティティ フレームワークの連絡先オブジェクトが含まれ、追加の連絡先フィールドが含まれています。FullName を正常に表示して保存するが、FullName と組み合わせて保存したい電話の内線番号は表示しない、いくつかの動作中の XAML を次に示します。

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

wpf - TimeSpan の MultiBinding StringFormat

私は一生これを機能させることはできません。テキストブロック内の timespan オブジェクトのペアから hh:mm を表示する必要がありますが、機能していません。これは私がこれまでに持っているものです:

テキスト ブロックが空白で表示されます。私も同じ結果で次のことを試しました:

文字列形式が hust "hh" の場合、時間だけが得られるので、4 つの部分から構築できると思いますが、それは適切ではありません。どんな助けでも大歓迎です。

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

wpf - バインディングで機能するフォーマット文字列がマルチバインディングで機能しないのはなぜですか?

私はこの質問に興味をそそられました:TimeSpanのMultiBindingStringFormat

StartTimeのタイプがTimeSpanである場合に、次のバインディングを定義している場合:

上記のバインディングは期待どおりに評価されます。ただし、元の質問のシナリオが示すように、MultiBindingで同じフォーマット文字列を使用しようとすると、FormatExceptionで失敗します。

問題は、誰かがその理由を知っているかということです。これはバグですか、それとも予想される動作ですか?MultiBindingで同じ出力を取得するには、フォーマット文字列の「\:」を「:」に変更する必要があるのは奇妙に思えます(元の質問に答えたときに発見したように)。