作为解决方案重构的一部分,我不得不将Converter转移到Dependency Injected UI服务。现在我的ValueConverter出现在一个实例中。早些时候,我已经定义了一个本地资源,并为转换器提到它,就像一个魅力。在提到重构之后,我在Binding to Converter中尝试了我的运气,它只是说Binding无法完成转换器。阅读此http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/d6a95f05-4338-44a4-a834-bbfe71e893ac/找到了它的设计。
请告诉我如何在xaml中指定我的转换器,它存在于后面代码中的实例中(比如后面的Views代码中的UIHelperService.FormatConverter)。
答案 0 :(得分:3)
如果转换器可以在实例之间共享,那么在某处将其设为静态成员,然后......
{Binding Whatever Converter={x:Static src:MyClass.MyConverter}}
如果它是实例成员,您可能需要在代码隐藏中手动设置绑定...但转换器几乎不应该是特定于实例的。相反,如果需要,可以使用ConverterParameters来实现此行为。