2010-04-25 69 views
1

我有一个名为Cell的类有两个属性。一个叫int?类型的Value,另一个是我利用DataTemplateSelector 2周的DataTemplates两个不同的方案之间进行选择初始化期间称为类型ObservableCollection<ObservableCollection<Candidate>>WPF:根据值更改DataTemples

的考生。

如果Value属性有一个值,则应该使用模板A来呈现Cell类。 但是,如果Value属性为null,则应使用模板B来呈现Cell类。

虽然这在初始化过程中工作得很好,但是在运行时期间,当Value属性的值实际发生更改时,模板不会再更改。

是否使用DataTemplateSelector错误方法动态更改DataTemplates?你会推荐我应该怎么做?

非常感谢,

回答

2

虽然它似乎像DataTemplateSelector方法应该工作,另一种方式来尝试将使用DataTrigger代替。您可以创建一个样式,当Valuenull时触发,并根据该值设置控件的模板。

+0

这几乎是正确的方法,没有什么更多的我补充。 – 2010-04-25 05:07:27