代码之家  ›  专栏  ›  技术社区  ›  Jared Updike

如何在bindingSource.filter之后获取DataGridView的可见行计数?

  •  8
  • Jared Updike  · 技术社区  · 16 年前

    我有一张1640件的桌子。我设定

    bindingSource.Filter = "some filter query string";
    

    大部分的行消失了,比如说,400行。我希望能够告诉用户“显示1640个项目中的400个”,因为他们单击了一些文本框,这些文本框会更改筛选字符串,因此哪些行在DataGridView对象中可见(很像iTunes,但对于医疗数据,不是流派/艺术家/专辑筛选歌曲)。

    我尝试了bindingsource.count,不管筛选字符串设置为什么,它总是1640(即使根据需要显示的行数更少)。我尝试循环遍历DataGridView.Rows中的所有行,只计算可见的行数,但结果仍然是1640。

    我在哪里可以得到这个信息?

    请注意,我没有使用SQL,但bindingsource.datasource是一个数据视图中的数据源,该数据视图包装在数据表(从XML读取的数据集)周围。

    5 回复  |  直到 8 年前
        1
  •  1
  •   Picflight    16 年前

    如何在单独的数据表中添加筛选项,并对筛选项进行计数。

        2
  •  17
  •   ThunderGr    11 年前

    试试这个: datagridviewname.Rows.GetRowCount(DataGridViewElementStates.Visible);

        3
  •  3
  •   Jay Riggs    16 年前

    贾里德

    我最近不得不做这件事。对我有效的方法是在应用筛选器后使用DataGridView.Rows.Count属性。

    是否将数据源设置为BindingSource或DataGridView的DataSource属性?它应该是绑定源。

    高温高压 -杰伊

        4
  •  1
  •   Jared Updike    16 年前

    我把别的事情搞砸了。杰伊是对的:

    dataGridViewCases.Rows.Count
    

    作品,如下:

    bindingSource.Count
    
        5
  •  0
  •   S.Mohamed Mahdi Ahmadian zadeh    8 年前

    只需使用BindingSource的Count属性…

    ExampleBindoneSource.Count()