【发布时间】:2015-06-16 10:47:46
【问题描述】:
你如何有条件地设置treeviewitemson 绑定属性的样式
我遇到了一个问题,我想在树视图中设置项目的样式,这些项目是有效的选择与层次结构项目。
我尝试将我的style 标记移动到TreeView.Resources 和TreeView.ItemContainerStyle 标记中,但它仍然不会导致任何格式。
<TabItem Name="Queries" Header="Queries"
d:DataContext="{d:DesignInstance views:QuerySettingsView}">
<Grid>
<TreeView ItemsSource="{Binding QueryTreeModels}"
Width="500" Height="200" VerticalAlignment="Top"
HorizontalAlignment="Center" Margin="0,0,175,0">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<HierarchicalDataTemplate.ItemContainerStyle>
<Style >
<Setter Property="TreeViewItem.IsExpanded"
Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="TreeViewItem.IsSelected"
Value="{Binding IsSelected, Mode=TwoWay}" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsQuery}">
<Setter Property="TextBlock.Foreground" Value="Chartreuse" />
</DataTrigger>
<DataTrigger Binding="{Binding IsFolder}">
<Setter Property="TextBlock.Foreground" Value="Crimson" />
</DataTrigger>
</Style.Triggers>
</Style>
</HierarchicalDataTemplate.ItemContainerStyle>
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
</Grid>
</TabItem>
【问题讨论】:
-
欢迎来到 Stack Overflow!请明确说明您想要完成的任务。
-
为了可读性和清晰度而格式化。
-
@Kjartan 感谢更新我的问题
-
@Drakes 感谢您的反馈
标签: c# wpf treeview styles conditional