我正在研究devexreport,我想以编程方式创建一个表我使用这些代码但有一点问题。
DevExpress.XtraReports.UI.XRTable tbl = new XRTable();
DevExpress.XtraReports.UI.XRBarCode xrBarCode = new XRBarCode();
Detail1.Controls.Add(tbl);
tbl.Location = new System.Drawing.Point(358, 17);
tbl.Size = new System.Drawing.Size(358, 50);
tbl.Borders = (DevExpress.XtraPrinting.BorderSide)
(((DevExpress.XtraPrinting.BorderSide.Left
| DevExpress.XtraPrinting.BorderSide.Top)
| DevExpress.XtraPrinting.BorderSide.Right)
| DevExpress.XtraPrinting.BorderSide.Bottom);
// Total number of rows.
int rowCnt;
// Current row count.
int rowCtr;
// Total number of cells per row (columns).
int cellCtr;
// Current cell counter
int cellCnt;
rowCnt = int.Parse("2");
cellCnt = int.Parse("3");
for (rowCtr = 1; rowCtr <= rowCnt; rowCtr++)
{
// Create new row and add it to the table.
DevExpress.XtraReports.UI.XRTableRow row = new XRTableRow();
tbl.Rows.Add(row);
for (cellCtr = 1; cellCtr <= cellCnt; cellCtr++)
{
// Create a new cell and add it to the row.
DevExpress.XtraReports.UI.XRTableCell cell = new XRTableCell();
cell.Text = "Row " + rowCtr + ", Cell " + cellCtr;
row.Cells.Add(cell);
}
}
我尝试这个代码bur最后一行很困惑!所有的细胞都在第一个细胞上。
有什么问题?
答案 0 :(得分:3)
不确定它是否会有所帮助,但请尝试移动tbl.Rows.Add(row);
部分:
for (rowCtr = 1; rowCtr <= rowCnt; rowCtr++)
{
// Create new row..
DevExpress.XtraReports.UI.XRTableRow row = new XRTableRow();
for (cellCtr = 1; cellCtr <= cellCnt; cellCtr++)
{
// Create a new cell and add it to the row.
DevExpress.XtraReports.UI.XRTableCell cell = new XRTableCell();
cell.Text = "Row " + rowCtr + ", Cell " + cellCtr;
row.Cells.Add(cell);
}
// ..and add it to the table.
tbl.Rows.Add(row);
}