1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > winform调用fastreport制作报表(三)绑定数据

winform调用fastreport制作报表(三)绑定数据

时间:2021-06-06 11:05:20

相关推荐

winform调用fastreport制作报表(三)绑定数据

winfrom调用fastreport首先要引用几个插件

FastReport.Bars.dll,FastReport.dll,FastReport.Editor.dll

然后在工具箱中右键选择 “选择项” 添加组件,这个组件用于预览模板

引用之后在工具箱就可以看到了,然后拖拽到from窗体即可

组件名:previewControl1

将预览组件拖到窗体中

2.引用模板代码

下面我们可以调用在fastreport工具中制作好的模板

Preview(this.previewControl1);public static void Preview(PreviewControl previewControl){var report = CreateReportAndLoadFrx(); report.Preview = previewControl;report.Prepare();report.Show(); }public static Report CreateReportAndLoadFrx(){FastReport.Utils.Config.ReportSettings.ShowProgress = false;FastReport.Utils.Config.ReportSettings.ShowPerformance = false;FastReport.Utils.Res.LoadLocale("\\Chinese (Simplified).frl");Report report = new Report();report.Load(Application.StartupPath + @"\frx\test.frx");//这里是模板的路径return report;}

3.绑定数据

1.绑定普通文字参数

在模板中我们有一些参数是通过 [参数1] 这种形式设置的,绑定参数也很简单

report.SetParameterValue("变量1", "123");//这里的变量1是在设计模板时设置的变量[变量1]

2.绑定表格

这里我们使用变量的形式绑定吗,虽然比较弱智 但是实用性比较强

表头可以提前设置好,然后把参数写进去,直接绑定参数即可

绑定

还有一种方式

链接

3.绑定柱状图

FastReport.MSChart.MSChartObject MSChart1 = new FastReport.MSChart.MSChartObject();MSChart1 = (FastReport.MSChart.MSChartObject)report.FindObject("柱状图");MSChart1.Series[0].ClearValues();//清空原始值MSChart1.Series[1].ClearValues();MSChart1.Series[0].AddValue("吸烟", Convert.ToDecimal(性别.吸烟男));MSChart1.Series[1].AddValue("吸烟", Convert.ToDecimal(性别.吸烟女));MSChart1.Series[0].AddValue("饮酒", Convert.ToDecimal(性别.饮酒男));MSChart1.Series[1].AddValue("饮酒", Convert.ToDecimal(性别.饮酒女));MSChart1.Series[0].AddValue("锻炼", Convert.ToDecimal(性别.锻炼男));MSChart1.Series[1].AddValue("锻炼", Convert.ToDecimal(性别.锻炼女));MSChart1.Series[0].AddValue("饮食", Convert.ToDecimal(性别.饮食男));MSChart1.Series[1].AddValue("饮食", Convert.ToDecimal(性别.饮食女));

如果x轴类型很多显示不全

可以根据下图操作

4.绑定折线图

数据

List<T折线图> 数据 =new List<T折线图>();FastReport.MSChart.MSChartObject 折线 = new FastReport.MSChart.MSChartObject();折线 = (FastReport.MSChart.MSChartObject)report.FindObject("折线图");折线.Series[0].ClearValues(); 折线.Series[1].ClearValues(); 折线.Series[2].ClearValues(); 折线.Series[3].ClearValues();//清空四个折线原始值for (int i = 0; i < 年份分布.Count; i++){//一个年份一个年份的赋值折线.Series[0].AddValue(数据[i].年份, 年份分布[i].吸烟);// 折线.Series[1].AddValue(数据[i].年份, 年份分布[i].饮酒);// 折线.Series[2].AddValue(数据[i].年份, 年份分布[i].锻炼);// 折线.Series[3].AddValue(数据[i].年份, 年份分布[i].饮食);// }

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。