随着用户需求不断增加, 固定的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();

 

posted on 2022-08-20 10:18  小石头的一天  阅读(494)  评论(0编辑  收藏  举报