2010-08-09 79 views

回答

2

DataTriggers用于根据特定值更改样式。例如,当TextBlock的内容为低于0的数字时,将TextBlock更改为红色。

转换器用于将值转换为另一种类型的值。例如,将布尔转换为Visibility枚举值

1

DataTrigger只能用于检查特定值 - 它不能例如检查范围。 DataTrigger可以组合多个条件(MultiTrigger) - ValueConverter只能将一个值转换为另一个值。 (当然,MultiValueConverter可以获取很多值(并在所有这些值上侦听更新 - 但仍然只返回一个值)。)

虽然两者可以结合使用 - 比方说,有一个ValueConverter可以检查如果该值低于50(返回true)以激活DataTrigger(将其放入DataTrigger的绑定中)。

因此,在我的书中没有黄金法则 - 只有情况可能导致其中一个无法使用(或者非常非常难以应用)。

相关问题