在 WPF 的 DataGrid 控件中,GridSplitter 和垂直滚动条可以共存显示。具体实现步骤如下:

  1. 在 DataGrid 的父级容器中添加 GridSplitter 控件,设置其属性为垂直方向。
  2. 设置 DataGrid 的 VerticalScrollBarVisibility 属性为 'Visible' 或 'Auto',以显示垂直滚动条。
  3. 将 GridSplitter 控件的 Grid.Row 属性设置为 DataGrid 所在的行。
  4. 将 GridSplitter 控件的 HorizontalAlignment 属性设置为 'Stretch',以使其充满整个 DataGrid 所在的列。
  5. 将 DataGrid 的 HorizontalAlignment 属性设置为 'Stretch',以使其充满整个父级容器所在的列。
  6. 设置 DataGrid 的 CanUserResizeColumns 属性为 'False',以禁止用户调整列宽。
  7. 设置 GridSplitter 控件的 ResizeBehavior 属性为 'PreviousAndNext',以使其可以同时调整前一列和后一列的宽度。

完整示例代码如下:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <DataGrid Grid.Row="1"
              VerticalScrollBarVisibility="Auto"
              CanUserResizeColumns="False"
              HorizontalAlignment="Stretch">
        <!-- DataGrid 内容 -->
    </DataGrid>
    <GridSplitter Grid.Row="1"
                  Grid.Column="1"
                  Width="5"
                  HorizontalAlignment="Stretch"
                  ResizeBehavior="PreviousAndNext"/>
</Grid>

其中,GridSplitter 控件的 Grid.Column 属性可以省略,因为在这个示例中只有一列。如果有多列,则需要设置 GridSplitter 的 ColumnSpan 属性,使其跨越多列。

WPF DataGrid: 如何让 GridSplitter 和垂直滚动条共存显示

原文地址: https://www.cveoy.top/t/topic/nlPv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录