如何在WPF / C#中的TreeView类中创建一行粗体?

时间:2010-06-01 07:57:49

标签: c# wpf treeview controltemplate

如何在WPF / C#中的TreeView类中创建一行粗体?

我的意思是,你如何在运行时以树形粗体显示一行?

1 个答案:

答案 0 :(得分:1)

我认为你可以借助样式和触发器来做到这一点。例如,在此示例代码中,所选项目将变为粗体,并且其大小将从12更改为16.

<Window x:Class="WpfApplication17.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525" >

    <Window.Resources>
        <Style TargetType="{x:Type TreeViewItem}">
            <Setter Property="FontWeight" Value="Normal"></Setter>
            <Setter Property="FontSize" Value="12"></Setter>
            <Style.Triggers>
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="FontWeight" Value="Bold"></Setter>
                    <Setter Property="FontSize" Value="16"></Setter>
                </Trigger>          
            </Style.Triggers>      
        </Style>

    </Window.Resources>
    <Grid>
        <TreeView>
            <TreeViewItem Header="Computer1">
                <TreeViewItem Header="UserGroup1">
                    <TreeViewItem Header="User1"></TreeViewItem>
                    <TreeViewItem Header="User2"></TreeViewItem>
                    <TreeViewItem Header="User3"></TreeViewItem>
                </TreeViewItem>
                <TreeViewItem Header="UserGroup2">
                    <TreeViewItem Header="User4"></TreeViewItem>
                    <TreeViewItem Header="User5"></TreeViewItem>
                    <TreeViewItem Header="User6"></TreeViewItem>
                </TreeViewItem>
            </TreeViewItem>

        </TreeView>
    </Grid>
</Window>

您还可以使用TreeViewItem对象的“FontWeight”属性来更改单个项目的字体权重,您希望将其设置为粗体,就像我在以下代码中所做的那样。在此代码中,只有UserGroup1 TreeViewItem是粗体。

<Grid>
    <TreeView>
        <TreeViewItem Header="Computer1">
            <TreeViewItem Header="UserGroup1" FontWeight="Bold">
                <TreeViewItem Header="User1"></TreeViewItem>
                <TreeViewItem Header="User2"></TreeViewItem>
                <TreeViewItem Header="User3"></TreeViewItem>
            </TreeViewItem>
            <TreeViewItem Header="UserGroup2">
                <TreeViewItem Header="User4"></TreeViewItem>
                <TreeViewItem Header="User5"></TreeViewItem>
                <TreeViewItem Header="User6"></TreeViewItem>
            </TreeViewItem>
        </TreeViewItem>

    </TreeView>
</Grid>

我希望这是你的答案。