1. 程式人生 > 其它 >FastReport動態繫結只顯示一條資料。

FastReport動態繫結只顯示一條資料。

轉自: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 privatevoidbutton1_Click(objectsender, EventArgs e) { DataSet FDataSet =newDataSet(); DataTable table =newDataTable(); 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 =
newFastReport.Report(); try { report1.Load(@"C:\Users\zgj\Desktop\Untitled1.frx"); report1.RegisterData(FDataSet); report1.GetDataSource("Items").Enabled =true; DataBand data = report1.Report.FindObject("Data1")asDataBand; data.DataSource = report1.Report.GetDataSource("Items"); report1.Show(); report1.Dispose(); } catch(Exception ex) { MessageBox.Show(ex.Message); //throw; } }