【问题标题】:DataGrid-like scrolling behaviour类似 DataGrid 的滚动行为
【发布时间】:2012-01-28 17:53:31
【问题描述】:

我需要使用标题和项目窗格来实现控制。此控件应具有类似于 DataGrid 的滚动行为。标题应与项目一起水平滚动,但应在垂直滚动时固定。我该如何实现这种行为?

【问题讨论】:

    标签: wpf xaml datagrid user-controls scroll


    【解决方案1】:

    我会使用两个 ScrollViewer,而不是一个

    这是我将使用的控件布局

    <DockPanel>
        <ScrollViewer x:Name="HeaderScrollViewer" DockPanel.Dock="Top">
            <Grid x:Name="Headers" />
        </ScrollViewer>
        <ScrollViewer x:Name="ContentScrollViewer">
            <Grid x:Name="Content" />
        </ScrollViewer>
    </DockPanel>
    

    要使这项工作正常工作,需要注意一些事项。

    • 隐藏HeaderScrollViewer 上的滚动条。 ScrollViewer 仅用于功能 - 用户实际上不会与之交互。

    • ContentScrollViewer水平滚动时,手动滚动HeaderScrollViewer等距离。

    • 使用Grid.IsSharedSizeScopeGrid.SharedSizeGroup 将标题网格列与内容网格列对齐

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-13
      • 1970-01-01
      • 2017-07-12
      • 1970-01-01
      • 2011-07-27
      • 2015-01-30
      • 2011-02-05
      • 1970-01-01
      相关资源
      最近更新 更多