【问题标题】:update datagridview when database change数据库更改时更新datagridview
【发布时间】:2012-12-05 00:24:03
【问题描述】:

我有 2 台计算机:服务器和客户端,两者上的相同 winform 应用程序,相同的数据库。

我希望能够在数据库更改时更新 datagridview

所以我每 4 秒更新一次代码,刷新 datagridview 数据源。

数据源变化时很少出现问题

首先,如果在数据网格中选择了一行(dataGridView_RowHeaderMouseClick),它会失去焦点。

如果我向下滚动datagridview,滚动条会跳到开头。

关于如何正确地做的任何想法?

谢谢

巴罗兹

【问题讨论】:

    标签: c# .net winforms


    【解决方案1】:

    您不想在没有任何条件的情况下每 4 秒刷新一次 DataSource。正如你所说,有几个功能问题会受此影响(例如失去对一行的关注,虽然可以通过每次关注一行时存储行句柄来解决,但不应该是你需要的东西to do),更不用说如果您正在加载的表很大,则不断重新加载会导致性能问题。

    您应该在每次 DataSource 更改时触发刷新,或者按照 Anthbs 的说法,将数据与网格的 DataSource 进行比较,只有在它们不同时才刷新。

    【讨论】:

      【解决方案2】:

      这里有几个想法可以减少刷新问题。

      • 为减少发生这种情况的机会,您可以将新数据与网格中的数据进行比较,仅当数据发生更改时才刷新。

      • 您可以在刷新网格之前存储选定的索引,并在刷新后将其重新设置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-05-27
        • 2021-12-11
        • 2011-09-13
        • 1970-01-01
        • 1970-01-01
        • 2012-02-12
        相关资源
        最近更新 更多