C# WPF在TreeViewItem上包装标题文本

C# WPF在TreeViewItem上包装标题文本,c#,wpf,treeview,treeviewitem,C#,Wpf,Treeview,Treeviewitem,我在WPF中创建了一个固定宽度为145px的TreeView,它的所有子元素(TreeView项)都有一个宽度大于145px的标题文本,这意味着在TreeView的底部会出现一个水平滚动条 通过添加以下内容,我成功地摆脱了滚动条: ScrollViewer.HorizontalScrollBarVisibility="Hidden" 到我的树视图 但是,太宽的标题文本现在被隐藏,所以我想包装标题文本,使其适合宽度为145px的树视图 我一直在寻找解决方法,并尝试了一些我发现的方法,但仍然没有成

我在WPF中创建了一个固定宽度为145px的TreeView,它的所有子元素(TreeView项)都有一个宽度大于145px的标题文本,这意味着在TreeView的底部会出现一个水平滚动条

通过添加以下内容,我成功地摆脱了滚动条:

ScrollViewer.HorizontalScrollBarVisibility="Hidden"
到我的树视图

但是,太宽的标题文本现在被隐藏,所以我想包装标题文本,使其适合宽度为145px的树视图

我一直在寻找解决方法,并尝试了一些我发现的方法,但仍然没有成功,这让我很沮丧

以下是我的XAML代码:

<TreeView ScrollViewer.HorizontalScrollBarVisibility="Hidden" Width="145" Name="tree_menu" >
   <TreeViewItem Header="This is a very long root element node text">
      <TreeViewItem Header="this is a very long child element node text" />
   </TreeViewItem>
</TreeView>

也许这对你有用:

<TreeView Name="tree_menu">
    <TreeView.Resources>
        <Style TargetType="{x:Type TreeViewItem}">
            <Setter Property="HeaderTemplate">
                <Setter.Value>
                    <DataTemplate>
                        <TextBlock Width="145"
                                   TextWrapping="Wrap"
                                   Text="{Binding}" />
                    </DataTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </TreeView.Resources>
    <TreeViewItem Header="This is a very long root element node text">
        <TreeViewItem Header="this is a very long child element node text" />
    </TreeViewItem>
</TreeView>

也许这对你有用:

<TreeView Name="tree_menu">
    <TreeView.Resources>
        <Style TargetType="{x:Type TreeViewItem}">
            <Setter Property="HeaderTemplate">
                <Setter.Value>
                    <DataTemplate>
                        <TextBlock Width="145"
                                   TextWrapping="Wrap"
                                   Text="{Binding}" />
                    </DataTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </TreeView.Resources>
    <TreeViewItem Header="This is a very long root element node text">
        <TreeViewItem Header="this is a very long child element node text" />
    </TreeViewItem>
</TreeView>