1

WPF で 145 ピクセルの固定幅の TreeView を作成しました。そのすべての子要素 ​​(TreeViewItems) には、145 ピクセルよりも幅の広いヘッダー テキストがあります。つまり、TreeView の下部に水平スクロール バーが表示されます。

以下を追加することで、そのスクロールバーを取り除くことができました。

ScrollViewer.HorizontalScrollBarVisibility="Hidden"

私のTreeViewに。

ただ、幅が広すぎるヘッダーテキストが隠れてしまっているので、145px幅のTreeViewに収まるようにヘッダーテキストを折り返したいと思います。

これに関する解決策を検索し、見つけたもののいくつかを試しましたが、まだ機能せず、イライラしています!

ここに私の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>
4

1 に答える 1

4

多分これはあなたのために働く:

<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>
于 2012-05-03T10:54:35.930 に答える