asp.net中的rdlc [英] rdlc in asp.net

查看:83
本文介绍了asp.net中的rdlc的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在运行时创建一个 rdlc 报告.我不想修复列,因为我的查询每次都会更改.另外,我想在运行时设置报告布局.如何做到这一点?

I would like to create a rdlc report at run time. I don't want to fix the columns because my query changes each time. Also, I would like to set the report layout at run time. How can this be accomplished?

推荐答案

这是有关如何对报告中的列的可见性进行编程的模式:

This is the schema on how I programmed the visibility of the columns in my reports:

  • 创建包含所有列的表格报告
  • 在报告代码部分中添加一个函数,名称可以为IsHidden(String ColumnName)
  • 将每列的可见性更改为= IsHidden("YourColumnName"),ColumnName需要更改每列

执行报告时:

  • 在xml文档中阅读报告
  • 分析RDLC,使用isHidden函数获取所有节点,并根据需要显示或隐藏的列将其替换为True或False.

您可以使用以下代码段选择包含IsHidden函数的所有节点:

You can select all the nodes containing the IsHidden function using this snippet:

System.Xml.XmlNodeList TableColunmnList = xmldoc.SelectNodes("rs:Report//*/rs:Visibility [rs:Hidden ='= Code.IsHidden(\""+ FieldName +" \)'],xmlnsManager);

  • 使用此代码重新加载RDL代码,XmlReport是RDL代码

System.IO.TextReader reader = new System.IO.StringReader(XmlReport);reportViewer1.Reset();reportViewer1.LocalReport.LoadReportDefinition(阅读器);

  • 仅此而已,您的报告在所有列上都具有动态可见性.

这篇关于asp.net中的rdlc的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆