随着用户需求不断增加, 固定的report 表内的字段位置,布局之类的.不能满足用户需求. 于是要给用户加上报表的设计功能.这样在展示的时候更有灵活性,也不用每个改动都找程序人员
不带 设计时这么写就行了
documentViewer1.DocumentSource = null; woReport report = new woReport(xxxid); documentViewer1.ShowToolTips = true; documentViewer1.UseAsyncDocumentCreation = DefaultBoolean.True; documentViewer1.DocumentSource = report; documentViewer1.InitiateDocumentCreation();
带报表设计功能,那需要先把报表文件保存.如下图:
在根目录整一个文件夹放模版文件
打开的时候就变化了,期先以为数据源获取那块也在模版文件内.实际不是
report.cs +模版文件 的结合体
正确方式是xxxReport 实例化后加载模版,如果 new XtraReport 这种方式是没有动态加载的数据的. 直接从网上下来的例子给使用,结果悲催了.猜猜改改,也没找官方文档给解决了.
所以总结就是.模版文件保存的时候只是分离了表面ui那块,数据源绑定获取那部分没加入进去.
xxxReport report = new xxxReport (xxx); // XtraReport report = new XtraReport();//实例化 string reportfilepath = Directory.GetCurrentDirectory() + "/Report/xxxx.repx"; report.LoadLayout(reportfilepath);//加载模板 report.Landscape = false; //这是纵向的意思 true为横向 documentViewer1.ShowToolTips = true; documentViewer1.UseAsyncDocumentCreation = DefaultBoolean.True; documentViewer1.DocumentSource = report; documentViewer1.InitiateDocumentCreation();
技术交流qq群:143280841