我有以下场景: WPF Treeview 显示自定义对象,每个对象都包含一个子列表。所以问题是:每个自定义对象都由一个组合框控制,该组合框可以将当前对象从 A 类更改为 B/C/D 类,反之亦然。AD 类都是超类的子类。到目前为止,一切都很好。每个类都应该由 WPF 树视图中的特定数据模板表示,因此每次用户更改对象类(使用内联组合)时,项目都应该应用一个新模板。到目前为止,我已经尝试过:
- DataTemplate 选择器类(仅在开始时应用)
- 在树视图中“清空” DatatemplateSelector 并在对象更改后重新应用它(太慢)
- 按类(x:Type)的数据模板(有效,但我需要每个对象三个不同的模板,一个图形,一个最小,一个最大显示宽度和额外的文本块)
- Datatrigger(我不知道如何将它数据绑定到更改的类)
可能是某种系统性错误。非常感谢您的帮助
问候
马库斯