WPF - TreeViewItem标头的动态着色

时间:2013-11-07 06:42:24

标签: c# wpf dynamic header tree

我在TreeViewItems内动态创建TreeView。 在单击按钮后面的代码中,我想将header TreeViewItem(我有权访问)变为红色。我怎样才能做到这一点?绑定不是我最强的一面。还有另外一种方法吗?无论如何,我很乐意理解和学习。示例代码:


<Grid>
    <TreeView Height="200" HorizontalAlignment="Left" Margin="92,24,0,0" 
              Name="treeView1" VerticalAlignment="Top" Width="120" >
        <TreeViewItem Name="Ratata">rere</TreeViewItem>
    </TreeView>
</Grid>

代码背后:

treeView1.BorderBrush = Brushes.Red;
Ratata.Background = Brushes.Red;
Ratata.Foreground = new SolidColorBrush(Colors.Red);
Ratata.SetValue(TextElement.ForegroundProperty, Brushes.Red);

这些都没有将标题本身染成红色。还有什么帮助?

1 个答案:

答案 0 :(得分:0)

您的代码很好但是您必须设置TreeViewItem的Header才能设置标签,否则它只是一个空项。

<Grid>
    <TreeView Height="200" HorizontalAlignment="Left" Margin="92,24,0,0" Name="treeView1" VerticalAlignment="Top" Width="120">
        <TreeViewItem Name="Ratata" Header="rere">
        </TreeViewItem>
    </TreeView>
</Grid>