【问题标题】:How do you apply a ValueConverter to a convention-based Caliburn.Micro binding?如何将 ValueConverter 应用于基于约定的 Caliburn.Micro 绑定?
【发布时间】:2011-09-28 17:29:05
【问题描述】:

如何将 ValueConverter 应用于基于约定的 Caliburn.Micro 绑定?还是需要使用 {Binding} 语法?

我知道我能做到这一点

<TextBlock
    Text="{Binding Foo, Converter=fooToBarConverter}" />

但是如果我使用 Caliburn.Micro 的约定优于配置,我该如何应用该自定义转换器,例如

<TextBlock
    x:Name="Foo" />

谢谢,

【问题讨论】:

    标签: silverlight xaml binding caliburn.micro valueconverter


    【解决方案1】:

    您需要替换 ConventionManager.ApplyValueConverter 函数。默认情况下,它只进行 athe bool => Visibility 转换。此外,您可以将 ApplyStringFormat 函数替换为常规字符串格式。查看 ConventionManager 以了解其工作原理。

    【讨论】:

    • 酷 - 谢谢。我见过 SetBinding 调用这个,但在需要编写我自己的方面没有加入点...
    • 所以,大概我想将默认的 boolToVis 函数存储在某个地方,创建我自己的 ApplyValueConverter,然后在 VM 完成绑定到视图后恢复默认值。这是一个合理的方法吗?不确定我是否想将我非常具体的 IVC 作为默认设置,tbh...
    猜你喜欢
    • 2013-10-11
    • 2011-05-14
    • 1970-01-01
    • 2011-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    相关资源
    最近更新 更多