使用WPF,我有一个TreeView控件,我想通过过程代码动态设置它的ItemTemplate。我该怎么做呢?我想我需要在某处找到资源。
myTreeViewControl.ItemTemplate = ??
答案 0 :(得分:12)
如果模板是在< Window.Resources>中定义的。直接部分:
myTreeViewControl.ItemTemplate = this.Resources["SomeTemplate"] as DataTemplate;
如果它位于窗口深处,就像在< Grid.Resources>中一样。部分或其他什么,我认为这会起作用:
myTreeViewControl.ItemTemplate = this.FindResource("SomeTemplate") as DataTemplate;
如果它在您的应用程序的其他位置,我认为 App.FindResource(“SomeTemplate”)将起作用。
答案 1 :(得分:2)
如果您的treeview控件需要不同的项目模板,则应实现DataTemplateSelector类并将其实例设置为树视图。据我所知,有一个DataTemplateSelector的属性。