9

使用 WPF,我有一个 TreeView 控件,我想通过程序代码动态设置它的 ItemTemplate。我该怎么做呢?我想我需要在某个地方找到资源。

myTreeViewControl.ItemTemplate =   ??
4

2 回答 2

12

如果模板直接在 <Window.Resources> 部分中定义:

myTreeViewControl.ItemTemplate = this.Resources["SomeTemplate"] as DataTemplate;

如果它位于窗口深处,例如在 <Grid.Resources> 部分或其他地方,我认为这会起作用:

myTreeViewControl.ItemTemplate = this.FindResource("SomeTemplate") as DataTemplate;

如果它在您的应用程序的其他地方,我认为App.FindResource("SomeTemplate") 会起作用。

于 2008-08-27T20:51:01.443 回答
2

如果您的树视图控件需要不同的项目模板,您应该实现 DataTemplateSelector 类并将它的实例设置为您的树视图。据我记得有一个 DataTemplateSelector 的属性。

于 2008-09-16T04:22:57.080 回答