DevExpress:如何以编程方式从XtraReport中删除列?

时间:2011-10-02 17:32:01

标签: devexpress

我有一个带有XtraReport报告的Web应用程序。该报告有几个专栏。 根据某种情况,在某些情况下,我不需要存在其中一列。什么是以编程方式删除它的最佳方法?我不需要'使列不可见',但删除它。在删除之前列占用的空间应该在其他列之间均匀分布。

3 个答案:

答案 0 :(得分:1)

一个正确的解决方案是从XRTableRow.Cells集合中临时删除不必要的XRTableCell ......

查看DevExpress支持中心的http://www.devexpress.com/issue=Q216567讨论。希望这会有所帮助。

答案 1 :(得分:1)

实现此目的的最简单方法是从行中删除单元格(例如,在报表BeforePrint事件中)。您还应该将它包装在表本身的suspend-resume布局代码中:

private void TableReport_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e)
{
    xrTable1.SuspendLayout();
    xrTableRow1.Cells.Remove(xrTableCell1);
    xrTable1.PerformLayout();
}

答案 2 :(得分:0)

你可以使用处理细胞   如果CEHide.Checked = True那么 XrTableCell2.Dispose()