为什么我们在WPF中同时拥有TypeConverters和IValueConverter?

时间:2014-07-07 09:49:03

标签: wpf ivalueconverter typeconverter

我是WPF的新手。我只是不明白为什么在WPF中需要TypeConverters和IValueConverter。两个对象的目的是将值转换为特定类型;但是为什么两个?

提前致谢。

1 个答案:

答案 0 :(得分:3)

IValueConverter仅用于数据绑定方案。它允许您在值显示在UI之前格式化值,或者从UI控件解析值,以便它们可以存储在绑定源中。一个例子是将UI中的IsDirty标志转换为“*”,或者将Color实例转换为Brush实例。根据我自己的经验,我使用IValueConverter只是为了格式化目的(也就是说,只实现Convert方法)。

TypeConverter派生类主要用于转换为字符串值/从字符串值转换。这可以用于在XAML中设置自定义类型的属性。