can*_*ari 5 c# data-binding wpf converters
我刚刚注意到,在我的项目中的某些地方,我忘记将 Int/DoubleToStringValueConverter 与 TwoWay 绑定一起使用,但它们仍然在工作。
那么是否存在某种隐式转换?我实际上知道字符串->颜色、颜色->字符串转换,并且有时使用它,但不知道数字->字符串、字符串->数字。那么您能否在某个地方推荐一个文档,让我可以阅读有关何时应该使用转换器以及何时不应该使用转换器的信息?
\n\n[...] 由于绑定到的类型中存在类型转换器,默认转换可能可用。此行为\n将取决于目标中可用的类型转换器。如果有疑问,请创建您自己的转换器。
\n以下是一些实施数据转换器有意义的典型场景:
\n\xe2\x80\xa2 您的数据应该以不同的方式显示,具体取决于文化。例如,您可能希望根据特定区域性中使用的约定来实现货币转换器或日历日期/时间转换器。
\n\xe2\x80\xa2 所使用的数据不一定要更改属性的文本值,而是要更改某些其他值,例如图像的源,或者显示文本的颜色或样式。在此实例中,可以通过转换看似不合适的属性的绑定来使用转换器,例如将文本字段绑定到表格单元格的背景属性。
\n\xe2\x80\xa2 多个控件或控件的多个属性绑定到同一数据。在这种情况下,主绑定可能只显示文本,而其他绑定处理特定的显示问题,但仍使用与源信息相同的绑定。
\n\xe2\x80\xa2 目标属性具有绑定的集合,称为 MultiBinding。对于 MultiBinding,您可以使用自定义 IMultiValueConverter 从绑定值生成最终值。例如,颜色可以根据红色、蓝色和绿色值来计算,这些值可以是来自相同或不同绑定源对象的值。有关示例和信息,请参阅多重绑定。
\n