2011-08-15 10 views
3

ソリューションのリファクタリングの一環として、コンバーターをDependency Injected UIサービスに移動する必要がありました。今、私のValueConverterはインスタンス内にあります。以前私は地方の資源を定義し、魅力的に働いたConverterのためにそれを言及しました。上記のリファクタリングの後、Binding to Converterで私の運を試してみたところ、BindingはConverterには行えないと言っただけです。これを読むのはhttp://social.msdn.microsoft.com/Forums/en-US/wpf/thread/d6a95f05-4338-44a4-a834-bbfe71e893ac/です。コード内に定義されたコンバーターをバインドする

コードの背後にあるインスタンス内に存在するxamlでのConverterの指定方法を教えてください(後ろのViewsコードのUIHelperService.FormatConverter)。

答えて

3

コンバータは、インスタンス間で共有することができれば、それはどこかにして、静的メンバ作る....

{Binding Whatever Converter={x:Static src:MyClass.MyConverter}} 

それはインスタンスメンバーの場合は、手動でコード - に結合設定する必要があるかもしれませんコンバーターはほとんど決してインスタンス固有ではありません。代わりに、必要に応じてConverterParametersを使用してこの動作を実現できます。

+0

ありがとうロバート!私はそれを非インスタンス固有のコンバータにしました。コンバータを静的インスタンスに保持している依存関係注入サービスを作成できないためです。 – ioWint

関連する問題