2012-05-03 11 views
1

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

私はTreeViewにScrollViewer.HorizontalScrollBarVisibility="Hidden"を追加することによって、そのスクロールバーを取り除くことができました。

しかし、幅の広いヘッダーテキストが非表示になっているため、ヘッダーテキストをラップして、145ピクセル幅の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

はたぶんこれはあなたのために働く:

<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> 
+0

これはあまりにもコンテキストメニューのために働く – bale3

+0

:-)あなたに非常に多くの先生ありがとうございました。 – Zamboni

関連する問題