Treeview没有伸展

时间:2016-04-12 12:42:50

标签: wpf xaml treeview

我有一个简单的应用程序,其中包含Treeview和网格中的主要内容区域。网格有一个gridplitter来调整大小,但这不会调整Treeview的大小。

enter image description here

我读过这是一个错误,

  

但是调整Treeview大小的最简单方法是什么?

<Window x:Class="TestGridSplitter.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">
<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="auto"/>
        <ColumnDefinition Width="5"/>
        <ColumnDefinition />                              
    </Grid.ColumnDefinitions>
    <TreeView Grid.Column="0">
        <TreeViewItem>
            My Treeview
        </TreeViewItem>
    </TreeView>
    <GridSplitter Grid.Column="1" Width="5"/>
    <TextBlock Grid.Column="2">
        Main Content Area
    </TextBlock>
</Grid>

将水平对齐或内容对齐设置为“拉伸”不起作用!

2 个答案:

答案 0 :(得分:3)

此外,有必要设置GridSplitter的其他属性,例如ResizeDirection="Columns"ResizeBehavior="PreviousAndNext"属性。例如:

<GridSplitter Grid.Column="1" Width="5" ResizeDirection="Columns"  
                                 ResizeBehavior="PreviousAndNext"/>

答案 1 :(得分:1)

尝试下一种方法:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>

    <StackPanel Grid.Column="0" Background="#feca00">
        <TextBlock FontSize="35" Foreground="#58290A" TextWrapping="Wrap">
          Left Hand Side
        </TextBlock>
    </StackPanel>

    <GridSplitter Width="4" Grid.Column="1" Background="Red" VerticalAlignment="Stretch" HorizontalAlignment="Center"/>

    <Border Grid.Column="2" BorderBrush="#58290A" BorderThickness="5" CornerRadius="10">
        <TextBlock FontSize="25" Foreground="#FECA00" TextWrapping="Wrap">
          Right Hand Side
        </TextBlock>
    </Border>

</Grid>