有一个带有两个控件listview和lisbox的wpf窗口(总是显示在窗口的高度)。
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="230"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<local:LeftSideListView Grid.Row="0"/>
</Grid>
<local:RightSideiveView Grid.Column="1"/>
</Grid>
这里我希望listview高度自动 - 我保持<RowDefinition Height="Auto"/>
但是当listview必须显示许多项目时,它只会显示少数项被截断。
如何以高度自动显示列表视图,如果有更多项目(&gt;窗口大小),则同时显示 - 显示滚动查看器。
答案 0 :(得分:0)
您需要做的是在LeftSideListView MaxHeight和“LayoutRoot”网格之间设置绑定。
<Grid x:Name="LayoutRoot">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="230"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<local:LeftSideListView MaxHeight="{Binding ElementName=LayoutRoot, Path=ActualHeight}" Grid.Row="0"/>
</Grid>
<local:RightSideiveView Grid.Column="1"/>
</Grid>
如果LeftSideListView高度将大于LayoutRoot高度,则其高度将更改为MaxHeight值,并且将显示verticalscrollbar。
答案 1 :(得分:0)
以下是我想要的......
<DockPanel Grid.Column="0" HorizontalAlignment="Stretch">
<local:UC_FvExplorer VerticalAlignment="Top"/>
</DockPanel>