【发布时间】:2017-04-20 08:57:12
【问题描述】:
我需要设置 MinHeight DataGrid 的垂直滚动条。
但是为什么我的数据网格不这样做呢??
这是我的一些代码。
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" MinHeight="{Binding ElementName=listView1, Path=MinHeight}"/>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" MinHeight="{Binding ElementName=listView2, Path=MinHeight}"/>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions> .....
<Grid Grid.Row="4">
<DataGrid ColumnHeaderStyle="{StaticResource MyColumnHeader}" Style="{DynamicResource DataGridStyle}"
x:Name="incidentList" ColumnWidth="*"
Height="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Grid}}, Path=ActualHeight}"
HorizontalAlignment="Stretch" MinHeight="150" SelectedItem="{Binding SelectIcdtRow}"
ItemsSource="{Binding m_IncidentListData, UpdateSourceTrigger=PropertyChanged}" AutoGenerateColumns="False" CanUserAddRows="False">
.........
<Grid Grid.Row="8">
<DataGrid x:Name="listView2" ItemsSource="{Binding m_ResourceList}" HorizontalAlignment="Stretch"
Style="{DynamicResource DataGridStyle}" ColumnHeaderStyle="{StaticResource MyColumnHeader}"
ScrollViewer.CanContentScroll="True" ScrollViewer.VerticalScrollBarVisibility="Auto"
MinHeight="150" Margin="0,10,0,10" VerticalAlignment="Stretch" AutoGenerateColumns="False" CanUserAddRows="False">
DataGrid at Grid.Row="4" 可以做垂直滚动条, 但 Grid.Row="8" 的 DataGrid 不能。
所以我使用了scrollViewer,但它也没有制作滚动条。请帮我。
【问题讨论】:
-
滚动查看器也有很多问题。您是否也尝试设置 MaxHeight 而不仅仅是 MinHeight?如果你想让你的 ScrollViewer 工作,一旦你知道行的大小,你可能必须在代码中设置 ScrollViewer 的 MaxHeight? (即通过向 SizeChanged 添加处理程序)
-
如果将 RowDefinition 的 Height 设置为 150 会怎样?
标签: wpf datagrid tinyscrollbar