转自:https://www.cnblogs.com/zhaogaojian/p/8343295.html
产生这个问题的原因是因为需要把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();
感谢轧钢机
完整代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
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:UserszgjDesktopUntitled1.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; } } |