c# - DataGridView 滚动事件(和 ScrollEventType.EndScroll)

标签 c# .net winforms datagridview

当处理 DataGridView.Scroll 事件时,您可以检查它是否是滚动的结束(当用鼠标拖动滚动条时,这大概是在释放鼠标按钮时)。

问题是这似乎永远不会发生。 e.Type 永远不会是 ScrollEventType.EndScroll

这是怎么回事?如何仅在滚动完成后才做某事?

    private void dataGridView_Scroll(object sender, ScrollEventArgs e)
    {
        if (e.Type == ScrollEventType.EndScroll)
        {
            // ...      
        }
    }

最佳答案

嗯,看来这个事件只是被窃听了。

您可以锁定 DGV 的私有(private)滚动条对象(通过反射)并处理它们的事件,其中 ScrollEventType.EndScroll 按预期出现。

查看此 this如何操作的链接。

关于c# - DataGridView 滚动事件(和 ScrollEventType.EndScroll),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/785200/

相关文章:

c# - asp.net core 2.0 发布生成大量 DLL

c# - 在哪里可以找到用于升级到 System.Web.Http v5.0.0.0 的 NuGet 包?

winforms - 将 ToolStripProgressBar 锚定到 StatusBar(StatusStrip) 的右侧

c# - 如何从另一个线程锁定方法的一部分?

c# - 像在 MS Paint 中一样调整位图大小

c# - MySQL - 架构无效且未为 .....(等)的实例指定映射

c# - 如何让应用程序通过wcf数据服务使用不同的数据库

.net - SplashScreen.Close() 窃取 MainWindow 的焦点

c# - 如何使 Application.Run() 可测试

c# - Visual C# - 如何对齐 winforms 中的项目?