我有三个Windows Datagrids在我的XAML屏幕上一个放在另一个下面。这些网格中的每一个都有不同的列和行(分别为6行,5行和4行)。我需要能够以这样的方式显示这些网格内容,以便在这三个网格中的任何一个上都不会出现垂直滚动条。
如果我没有在第一个网格上放置ScrollViewer.VerticalScrollBarVisibility =“Visible”,则第6行将变为可见区域之外。
我在这里想念的是什么?
<ScrollViewer VerticalScrollBarVisibility="Auto" CanContentScroll="False">
<Grid>
<DataGrid Name="Grid1" Grid.Row="1" AutoGenerateColumns="False" CanUserAddRows="False" IsReadOnly="true"
ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" Margin="0,7,0,20" ColumnWidth="*" ScrollViewer.VerticalScrollBarVisibility="Visible">
<DataGrid Name="Grid2" Grid.Row="2" AutoGenerateColumns="False" CanUserAddRows="False" IsReadOnly="true"
ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" Margin="0,5,0,22"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Visible">
<DataGrid Name="Grid3" Grid.Row="3" AutoGenerateColumns="False" CanUserAddRows="False" IsReadOnly="true"
ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" Margin="0,5,0,22"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Visible">
</ScrollViewer>
</Grid>
感谢。
答案 0 :(得分:1)
设置每个DataGrid
VerticalScrollBarVisibility="Hidden"
和Height="Auto"
以及ScrollViewer
VerticalScrollBarVisibility="Auto"
,这将只为所有DataGrid提供1个ScrollBar。
如果你根本不想要任何ScrollBar,你可以使用ViewBox
来缩小所有内容以适应页面