【问题标题】:Get the total number of master rows and grouped rows in a DevExpress GridControl获取 DevExpress GridControl 中主行和分组行的总数
【发布时间】:2012-01-25 18:32:44
【问题描述】:

在我发布的previous question 中,我发现了如何使用 2 个事件来跟踪当前展开的分组行:

 - gridview.GroupRowExpanded
 - gridview.GroupRowCollapsed

我增加或减少一个整数来跟踪当前扩展了多少组行。我现在正在解决如果用户展开或折叠所有组行时该怎么办的问题。我目前通过检查e.RowHandle 知道何时完成此操作。

我想知道是否有办法找到当前在 GridView 中的组行总数(类似于普通行的行数),所以我知道将跟踪整数设置为多少。

例如:

  • 如果我的当前计数为 2,组总数为 15,那么当展开全部被触发时,当前计数设置为 15 而不是 3。

【问题讨论】:

    标签: vb.net visual-studio-2010 devexpress


    【解决方案1】:

    展开后的每个细节都是它自己的视图。因此,要获取主行数,您可以使用 MainView 属性中的行数,例如:

    GridControl1.MainView.RowCount
    

    获取组的行数:

        Dim Handle As Integer = -1  'group rows have negative row handles
        Do Until GridView1.GetRow(Handle) Is Nothing
            Handle -= 1
        Loop
        Dim count As Integer = Math.Abs(Handle + 1) 'number of group rows
    

    或者,您可以使用您的数据源和 linq,例如:

        Dim count As Integer = (From item As Class1 In List Group By item.Something Into AsEnumerable()).count
    

    但据我所知,那个没有直接的财产。

    【讨论】:

    • 谢谢,但是无论展开多少组行,GridView1.GroupCount 都会给我“1”,因为我只将它按一列分组。我想要分组行数,而不是 GridView 分组的列数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-27
    • 2015-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多