首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将ViewModel属性作为ValueConverter注入

将ViewModel属性作为ValueConverter注入
EN

Stack Overflow用户
提问于 2012-01-21 00:39:01
回答 1查看 420关注 0票数 0

我找到的所有ValueConverter示例都使用了参考资料来创建ValueConverter实例。但是我的ValueConverter使用了一些依赖项,这些依赖项由IoC框架解决。因此,我想将绑定转换器属性设置为可通过DataContext访问的ViewModel的某个属性。我试图这样做,但是得到一个异常,告诉我不能绑定任何东西到绑定的Converter属性。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-21 00:42:55

您不能绑定Binding.Converter,因为它不是依赖属性,但您可以使转换器继承DependencyObject并在其上声明dependency properties,然后可以绑定这些属性。

但是请注意,您可能需要跳过一些障碍来获得您想要的东西,因为您将无法绑定到DataContext。您可能也不能使用ElementName,因为转换器将没有名称作用域。一种常见的解决方法是将Binding.Sourcex:Reference结合使用,以具有正确DataContext的对象为目标。确保不要在目标对象的可视化树中声明实例化转换器,否则x:Reference将抛出循环依赖错误(目标对象的Resources就可以了)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8944764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档