【发布时间】:2010-11-24 21:27:38
【问题描述】:
嗨,我遇到的问题是我有多个 TreeView 控件,每个 TreeView 都有自己的 TreeViewItem 样式, 设置它
TreeView ItemContainerStyle="{StaticResource Style1}"
将只设置根元素而不是所有子元素,如何将样式应用于 TreeView 中的所有子元素
【问题讨论】:
标签: c# wpf treeview treeviewitem
嗨,我遇到的问题是我有多个 TreeView 控件,每个 TreeView 都有自己的 TreeViewItem 样式, 设置它
TreeView ItemContainerStyle="{StaticResource Style1}"
将只设置根元素而不是所有子元素,如何将样式应用于 TreeView 中的所有子元素
【问题讨论】:
标签: c# wpf treeview treeviewitem
有几种方法可以做到这一点:
您可以将您的样式设为所有 TreeViewItems 的默认样式:
<Style TargetType="{x:Type TreeViewItem}">
...
</Style>
不同之处在于您没有设置 x:Key 属性,而是设置了 TargetType 属性。在这种情况下,您不需要在 TreeView 上设置 ItemContainerStyle。
<TreeView>
<TreeView.Resources>
<Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource Style1}"/>
</TreeView.Resources>
</TreeView>
在这种情况下,您也不需要在 TreeView 上设置 ItemContainerStyle。
你也可以如下改变你的风格
<Style x:Key="Style1" TargetType="{x:Type TreeViewItem}">
<Setter Property="ItemContainerStyle" Value="{StaticResource Style1}"/>
</Style>
在这种情况下,您仍然需要在 TreeView 上设置 ItemContainerStyle。
【讨论】: