DevExpress.XtraReports.UI.XtraReport xrTable绑定数据问题 只显示一行!~~
如标题,数据源是多条,但Report只显示一条记录 ,百思不得其解,希望大神帮忙。如下是代码:
报表:
public partial class XtraSchedulerReport2 : DevExpress.XtraScheduler.Reporting.XtraSchedulerReport
{
public XtraSchedulerReport2()
{
InitializeComponent();
}
public XtraSchedulerReport2(DataSet ds)
{
InitializeComponent();
SetDataBind(ds);
}
private void SetDataBind(DataSet ds) //绑定数据源
{
DataSource = ds;
this.xrTableCell1.DataBindings.Add(new DevExpress.XtraReports.UI.XRBinding("Text", DataSource, "test1"));
this.xrTableCell2.DataBindings.Add(new DevExpress.XtraReports.UI.XRBinding("Text", DataSource, "test2"));
this.xrTableCell3.DataBindings.Add(new DevExpress.XtraReports.UI.XRBinding("Text", DataSource, "test3"));
}
}
窗体:
private void button1_Click(object sender, EventArgs e)
{
XtraSchedulerReport2 xrpt1 = new XtraSchedulerReport2(GetTempDataSet());
xrpt1.DataMember = ((DataSet) xrpt1.DataSource).Tables[0].TableName;
xrpt1.ShowPreviewDialog();
}
private DataSet GetTempDataSet()
{
DataSet ds = new DataSet();
DataTable dt = new DataTable("tempTable");
dt.Columns.Add("test1", Type.GetType("System.String"));
dt.Columns.Add("test", Type.GetType("System.String"));
dt.Columns.Add("test3", Type.GetType("System.String"));
dt.Columns.Add("test4", Type.GetType("System.String"));
dt.Columns.Add("test5", Type.GetType("System.String"));
dt.Columns.Add("test6", Type.GetType("System.String"));
dt.Columns.Add("test7", Type.GetType("System.String"));
DataRow tempRow;
for (int i = 1; i < 7; i++) //i:Row
{
tempRow = dt.NewRow();
tempRow[0] = i.ToString();
tempRow[1] = i.ToString();
tempRow[2] = i.ToString();
tempRow[3] = i.ToString();
tempRow[4] = i.ToString();
tempRow[5] = i.ToString();
tempRow[6] = i.ToString();
dt.Rows.Add(tempRow);
}
ds.Tables.Add(dt);
return ds;
}