产生这个问题的原因是因为需要把Band绑定DataSource.有两种方法
(1)DataBand data = report1.Report.FindObject("Data1") as DataBand;
data.DataSource = report1.Report.GetDataSource("Items");
(2)将report1.Show();改成report1.Design();然后选择数据源,然后保存报表。再把report1.Design()替换成report1.Show();
感谢轧钢机
完整代码
private void button1_Click(object sender, EventArgs e) { DataSet FDataSet = new DataSet(); DataTable table = new DataTable(); table.TableName = "Items"; FDataSet.Tables.Add(table); table.Columns.Add("No", typeof(int)); table.Columns.Add("Name", typeof(string)); table.Columns.Add("money", typeof(decimal)); table.Rows.Add(0,"张三", 123.43); table.Rows.Add(1, "李四", 123.43); table.Rows.Add(2, "王五", 123.43); table.Rows.Add(3, "张龙", 123.43); table.Rows.Add(4, "赵虎", 123.43); table.Rows.Add(5,"李四", 223.43); FastReport.Report report1 = new FastReport.Report(); try { report1.Load(@"C:\Users\zgj\Desktop\Untitled1.frx"); report1.RegisterData(FDataSet); report1.GetDataSource("Items").Enabled = true; DataBand data = report1.Report.FindObject("Data1") as DataBand; data.DataSource = report1.Report.GetDataSource("Items"); report1.Show(); report1.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message); //throw; } }