【发布时间】:2013-11-23 20:26:04
【问题描述】:
是否可以“错误”地使用转换器? 换句话说:我可以交换源和目标吗?
这是一个例子:
我创建了一个名为NullableDecimalToStringConverter 的简单IValueConverter,它将输入“NULL”转换为null,将数字转换为十进制。
我用它将我的 WPF 视图中的 TextBox 绑定到小数点?我的 ViewModel 中的属性。
在另一种情况下,我想以同样的方式将 NullableDecimal 转换为字符串...
是否可以简单地使用现有的NullableDecimalToStringConverter 倒置?
一种方法是使用转换器的参数告诉转换器应该转换哪种方式。
但是有一个 .NET 构建方式来做这样的事情吗?
另一种方法是使用两种转换方法和两个调用基类方法的单独转换器构建一个基类...
【问题讨论】:
-
你其实并不需要使用ConverterParameter,只需要检查转换器中的目标和源类型,然后决定使用哪种转换。
-
您是否考虑过在这种情况下使用
DataTriggers作为转换器的替代品? -
sa_ddam213:这是个好主意。谢谢! Rachel:它适用于这种情况。但这只是我想以“错误”方式使用转换器的一个例子。
标签: .net wpf binding converter ivalueconverter