我无法在运行时更新列表中的单个项目的DataTemplate。详细而言,这就是我想要完成的事情。
我有一个列表框,其中的项目可以有不同的状态(折叠,展开,禁用等),每个状态都有不同的布局。我使用TemplateSelector根据我班级的属性选择正确的DataTemplate,并且在我第一次创建列表时工作得很好,这些项目都正确显示。但是,当我更改在运行时设置DataTemplate的属性时,将调用NotifyPropertyChanged并在列表中更新项目的信息,但不会更新DataTemplate。例如:我有一个带有标签X的折叠项目,我想要展开。我点击该项目,标签更改为Y,但DataTemplate不会更新。
我对如何做到这一点有任何想法? DataTemplate是否可以在运行时更新,除非它是针对整个列表的?
我会感激任何帮助。
答案 0 :(得分:0)
制作UserControl并在数据模板中使用它。现在,要更改状态,您可以在此UserControl上调用方法,它将更新。您也可以通过故事板使用动画。