【问题标题】:WPF Datagrid scrolls up a bit when scrolled to end滚动到结束时 WPF Datagrid 向上滚动一点
【发布时间】:2012-05-15 13:25:26
【问题描述】:

我有一个 WPF Datagrid(Win7 上的 4.0)。当它通过拖动(after dragging)拇指滚动到最后时,它有时会在释放时返回一点并且鼠标光标移开(可能以整行开始)。我尝试设置 DG_ScrollViewer 的 CanContentScroll 属性(请参阅WPF DataGrid : CanContentScroll property causing odd behavior),但是当填充大量数据时,网格变得异常缓慢。

通过鼠标滚轮 (after scrolling with wheel) 滚动或单击滚动条箭头时不会出现此问题。

水平滚动也会出现问题!

【问题讨论】:

  • 有趣。在我的系统上,wpf 数据网格在滚动时总是跳过整行,甚至拖动拇指。数据网格的顶部始终与行的顶部对齐。我不能让它滚动,比如说,半行以引起你看到的行为。
  • @ErenErsönmez:也许它与 EnableColumnVirtualization="True" EnableRowVirtualization="True" 相关,但我没有尝试删除它。
  • 没有。这些属性似乎对我所看到的没有影响。
  • @ErenErsönmez:当底线较高(多行文本)时效果更显着。
  • 您确定不是您的鼠标实际弹起,导致拇指滚动吗?我不明白为什么鼠标滚轮应该与滚动条不同。

标签: wpf performance scrollbar wpfdatagrid drag


【解决方案1】:

如果找到原因。有一个处理程序导致了这种行为。

Private Sub mMainGrid_PreviewMouseUp(sender As Object, e As System.Windows.Input.MouseButtonEventArgs) Handles MyGrid.PreviewMouseUp
        If TypeOf e.OriginalSource Is Thumb Then
            MyGrid.Items.Refresh()
        End If
    End Sub

此处理程序的目的是在调整列大小时强制刷新标题。

【讨论】:

    猜你喜欢
    • 2011-01-21
    • 1970-01-01
    • 2017-07-12
    • 2013-02-03
    • 2014-06-24
    • 2011-10-06
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    相关资源
    最近更新 更多