我有一个非常大的DataGrid,它不适合窗口:
<DataGrid Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="17" AutoGenerateColumns="True" Name="dataGrid1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ItemsSource="{Binding DataList}" IsReadOnly="True" SelectedItem="{Binding SelectedStrategy, Mode=TwoWay}" AutoGeneratingColumn="DG_AutoGeneratingColumn">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction Command="{Binding OpenStrategyViewCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</DataGrid>
问题是:
由于没有垂直滚动,因此无法将DataGrid滚动到水平滚动的底部。
在两个维度(垂直和水平),datagrid大于窗口
我想在DataGrid中有两个滚动条,但它们应始终可见。怎么做?
答案 0 :(得分:2)
由于没有垂直滚动,因此无法滚动 DataGrid到水平滚动的底部。
听起来你没有正确配置你的大小,但我在WPF DataGrid上并不是那么大,所以我不能告诉你遗憾的是什么错误。
要始终显示滚动条,请使用以下两个属性:
<DataGrid
HorizontalScrollBarVisibility="Visible"
VerticalScrollBarVisibility="Visible" >
答案 1 :(得分:0)
您可以在DataGrid上设置具有Horizontal-和VerticalScrollBarVisibility的两个ScrollBars的可见性,但我想您可能应该像AndersonHolmström建议的那样将网格放在ScrollViewer中。
答案 2 :(得分:0)
在DataGrid周围添加ScrollViewer。帮助您控制数据网格大小,同样如其他海报提到的HorizontalScrollBarVisibility =“Visible”VerticalScrollBarVisibility =“Visible”控制滚动条的可见性。
<ScrollViewer HorizontalScrollBarVisibility="Visible" VerticalScrollBarVisibility="Visible">
<DataGrid Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="17" AutoGenerateColumns="True" Name="dataGrid1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ItemsSource="{Binding DataList}" IsReadOnly="True" SelectedItem="{Binding SelectedStrategy, Mode=TwoWay}" AutoGeneratingColumn="DG_AutoGeneratingColumn">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction Command="{Binding OpenStrategyViewCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</DataGrid>
</ScrollViewer>