C# 如何从xrTableRow xtraReport获取对xrTableCell的控制

C# 如何从xrTableRow xtraReport获取对xrTableCell的控制,c#,devexpress,xtrareport,C#,Devexpress,Xtrareport,我的表格中有数百行。这个表包含很少的列,我在这里停留的唯一问题是如何在打印之前从xrTableRow_获得对xrTableCell(列索引3)的控制 private void xrTableRow101_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) { XRTableRow tr = new XRTableRow(); tr = (XRTableRow)sender; ////be

我的表格中有数百行。这个表包含很少的列,我在这里停留的唯一问题是如何在打印之前从xrTableRow_获得对xrTableCell(列索引3)的控制

private void xrTableRow101_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
{
    XRTableRow tr = new XRTableRow();
    tr = (XRTableRow)sender;
    ////belw this should be if() for column 3 in that particular row
    if (tr.Cell.[  -- get control column index 3 here ---].Text == "")
    {
        tr.Visible = false;
    }
}

显然,我可以为每一行编写多行代码,但我在这里只想将代码简化为一个函数。因此,我可以向所有需要的行声明单个类函数。

请参考这些:

要获取XRTable行集合,请改用XRTable.Rows属性。请注意,FindControl方法返回XRControl对象,因此有必要将其强制转换为适当的类型。例如:

XRTable table = report.FindControl("xrTable1", true) as XRTable;  

foreach (XRTableRow row in table.Rows)  
    foreach (XRTableCell cell in row.Cells)  
        ....  
注意:您只能迭代通过设计器添加的行。如果报表表与数据库绑定,则建议您处理所需XRTableCell的BeforePrint事件,并从中获取单元格文本(使用XRTableCell.text属性或)