ブログの記事Silverlight MultiBinding solution for Silverlight 4のコードのConverter
プロパティは依存プロパティではないため、コンバータとバインドすることはできません(技術的理由から、ユーザコントロールの一部としての単純な静的リソースではなく、アプリケーションの早い段階でのUnityインジェクションの使用)。Silverlightのマルチバインディングへのコンバータのバインド
バインドされたコンバータを受け入れるようにMultiBinding
コードを変更するにはどうすればよいですか?
public IMultiValueConverter Converter { get { return (IMultiValueConverter)GetValue(ConverterProperty); } set { SetValue(ConverterProperty, value); } }
public static DependencyProperty ConverterProperty = DependencyProperty.Register("Converter", typeof(IMultiValueConverter), typeof(IMultiValueConverter), null);
が、私は
たDependencyProperty System.Windows.Data.IMultiValueConverterを得た:私は依存関係プロパティ作ってみました。コンバータは... Binding.MultiBinding型のオブジェクトに設定できません。
、これは実行可能な選択肢ではない場合、どのように私はConverterParameter
プロパティをバインドまたはMultiBinding
に、コンバータのバインディングをシミュレートするために何かを得ることができますか?
なぜデータをマルチバインディングにもバインドしないのはなぜですか?マルチバリューコンバータにデータがあり、データが変更された場合でもコンバータが起動します。 – punker76
@ punker76、私はあなたに従うか分からない。たとえば、ビュー・モデルの3つのプロパティーがマルチ・バインドですが、ビューで適切にフォーマットするためにコンバータを実行する必要があります。コンバータ自体は(私が知る限り)静的なリソースではありません。なぜなら、* it *はそのコンストラクタに依存性が注入されているからです。 – Kit
Mh、なぜあなたはコンバータをバインドしたいのですか? – punker76