RadGridView 获取子模板数据?

RadGridView get child template data?

我试图在遍历网格时只获取子模板的数据。

我从这个开始:

        foreach (GridViewRowInfo row in radGridView1.Rows)
        {
            err = IterateChildRows(row);
        }

并将行传递给此:

    private bool IterateChildRows(GridViewRowInfo rowInfo)
    {
        bool err = false;
        if (rowInfo.Cells[5].Value != null && rowInfo.Cells[5].Value.ToString() != "01/01/1900")
        {
            if (rowInfo.Cells[0].ViewTemplate.Templates[0].Caption == "Current")
            {
                if (rowInfo.ViewTemplate.Templates[0].RowCount == 0)
                {
                    MessageBox.Show("Not all products have CURRENT quantity breaks", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    err = true;
                }
            }
        }
        return err;
     }

我的问题是我似乎无法找到我传入的行的子模板数据。我尝试过的所有内容似乎都有来自所有主模板项的所有子行,而不仅仅是我的行已通过。

因此,如果我的主网格中有 2 个项目,子模板中各有 3 个项目,那么我得到的计数是 6 而不是 3。

我不知道我哪里错了...

有人吗?

干杯 院长

尝试以下操作,可以通过 HierarchyRowInfo 访问子行

private bool IterateChildRows(GridViewRowInfo rowInfo)
{
    bool err = false;
    GridViewHierarchyRowInfo hierarchyRow = rowInfo as GridViewHierarchyRowInfo;

    //To get current row childRows count
    int noOfChildRows = hierarchyRow.ChildRows.Count;

    //looping through the child rows
    foreach (GridViewRowInfo row in hierarchyRow.ChildRows)
    {   
        //check if its current child row
        if(row.IsCurrent)
        {
           // Do your logic
        }
    }

    return err;
 }