多个网格上的垂直滚动条

时间:2018-04-15 14:27:50

标签: c# wpf datagrid

我有三个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>

感谢。

1 个答案:

答案 0 :(得分:1)

设置每个DataGrid VerticalScrollBarVisibility="Hidden"Height="Auto"以及ScrollViewer VerticalScrollBarVisibility="Auto",这将只为所有DataGrid提供1个ScrollBar。

如果你根本不想要任何ScrollBar,你可以使用ViewBox来缩小所有内容以适应页面

相关问题