请教是用RDLC怎么做到一行排列组合常用公式多个标签

&&&您需要以后才能回答,未注册用户请先。当一行内出现多种文字样式时用什么标签来区分并且定义这些样式? - 知乎10被浏览2593分享邀请回答43 条评论分享收藏感谢收起36 条评论分享收藏感谢收起查看更多回答[原创] RDLC 报表系列(一) 创建一个报表 - 大熊的空间 - 博客园
我的图书馆
[原创] RDLC 报表系列(一) 创建一个报表 - 大熊的空间 - 博客园
&&& 本文只代表作者在一定阶段的认识与理解。
&一.写作前提
前一段时间写了一篇关于RDLC开发的示例文章,,得到了群里很多兄弟的支持,这篇文章从大体上讲述了怎样用RDLC做报表开发,没有给出具体的开发步骤,因此我决定来写一个系列关于RDLC报表开发的文章,希望对你有所帮助。
这个系列文章主要从实例的方式来说明怎么用Visual Studio 2008(2005也一样提供这个功能)做RDLC报表的开发,最后再对此系列做总结,讲述一些概念的东西。
&&&&&&&&&&& 作为开篇,我不想过多的讲于概念,主要来说明怎样来实现一个简单的RDLC报表。
二.本文内容&&
1.创建一个简单RDLC项目
2.总结3.代码下载()
三.创建一个简单RDLC项目
1. 打开Visual Studio 2008,新建一个ASP.NET Web Application项目,如下图所示。
2. 在项目中新建两个文件夹,分别叫DataEntity和ReprotTemplate,如下图, 至于这两个文件夹主要用来存放什么,在下面我们会讲到,这里先不说。
3. 此项目需要引用Microsoft.Reporting.WinForms和System.Windows.Forms,所以我们需要右击上图中的References,然后在.NET Tab中找到我们所需要引用的Reference,点击Ok,添加到我们的引用中去。
4. 右击我们新建的DataEntity文件夹,选择Addà New Item…,选择左边的Categories中的Data,然后选择右边的DataSet,输入你的DataSet 名字,然后点击Add到这个文件夹下,至此我们知道DataEntity文件夹用来存放数据集。
5. 点击Visual Studio IDE左边的Server Explorer(如果左边没有,可以在View菜单中找到),然后选择一个Database中的表,选择拖到DataSet中(如果还没有IDE中还没有Database影射,那么可以选择Toolsà Connect To Database…来连接到你需要的Database),当然这个DataSet中的表也可以自己定义(在编辑区点击右键,选择新增表,然后在表中增加你需要的字段)。
6. 右击我们新建的ReprotTemplate文件夹,选择Addà New Item…,选择左边的Categories中的Reporting,然后选择右边的Report,输入你需要的名字,点击Add,就样我们就把一个Report的模板加入到ReprotTemplate文件夹中了,Report模板的编辑区如下面第二张图所示。
7. 下面我们要做的事情就是编辑这个报表模板,首先我们选择这个报表所需要的数据集,点击Report菜单下面的Data Source…,在弹出的Report Data Source中,选择我们添加在DataEntity中那个DataSet的表,如下图所示。这里也就说明了,DataEntity中存放的是RDLC模板中所需要的数据集,为RDLC提供数据服务(除了DataSet以外,还有很多数据集,我们以后的内容中会讲解这此)。
8. 然后我们在Visual Studio IDE的左边的ToolBox中拖一个Table到我们的报表编辑区中,这个Table默
认有三行三列,第一行是标题行,第二行是数据绑定行,第三行是表的页脚行(如果你不想显示其中的一部分你可以选中一行,然后右击这一行的最左边,取消或者
选中即可)。如下图所示,我们在标题行对应的字段中输入标题名,你也可以右击到某一列,选择新增一列在选择列的左边或者右边。
&&&&&&&&&&& 接下来要做的事情就是为这个表选择数据集,选择表,右击表,选择Properties,在弹出的Table Properties General Tab的DataSet Name中选择我们刚到加入的数据集,你需要记住这个名字,因为有的时候你可能会用到。
9. 绑定数据到数据行,选择数据行中的第一列,右击选择Expression…,然后在Expression窗口中,选择Category中的,DataSets,然后Item中自动的会列出你已经增加的Data Source,选择一个Data Source,他会为你列出所有的字段,选中你要的字段双击即可到上面的编辑框中(默认的没有直接绑定到每一行的数据),你也可以在编辑框中自己输入如Fields!Category.Value来选择数据,其中Category是字段名,当你输入Fields!后会自动提示你有哪此字段。选择后点击OK,其它的字段也以同样的方法设
10. 上面我们已经完成了新增数据集,设置报表模板,为模板中的控件绑定数据集,那下面我们就来看一下如何提供数据给这个数据集,以及如何实现报表。
&&&&&&&&&&& 首先,我们在项目的根目录下新建一个类叫CustomPageBase.cs,他主要用来实现生成报表,代码如下:
&1&#region&Copyright(C)&2009&Xiong&Wei&All&rights&reserved.&2&&3&&//&==============================================================================&4&&//&Copyright(C)&2009&&Xiong&Wei&5&&//&6&&//&SYSTEM&NAME&&&&&&&&&&&&:&&7&&//&COMPONENT&ID&&&&&&&&&&&&:&RCLC.CustomPageBase&8&&//&COMPONENT&DESC&&&&&&&:&&9&&//10&&//&CREATED&DATE/BY&&&&&&&&:&2009&/&Xiong&Wei11&&//12&&//&REVISION&HISTORY&&&&&:13&&//&DATE/BY&&ISSUE#/SR#/CS/PM#/OTHERS&&&&DESCRIPTION&OF&CHANGE14&&//&15&&//&16&&//&==============================================================================17&&18&&#endregion19&&using&S20&&using&System.D21&&using&System.C22&&using&System.L23&&using&System.W24&&using&System.Web.S25&&using&System.Web.UI;26&&using&System.Collections.G27&&using&Microsoft.Reporting.WinF28&29&&namespace&RCLC30&{31&&&&&public&class&CustomPageBase&:&Page32&&&&&{33&&&&&&&&&public&void&GetReportMultipleDataSourceFile(List&ReportDataSource&&reportDateSource,&string&TemplatePath,&List&ReportParameter&&parameterList,&string&FileType)34&&&&&&&&&{35&&&&&&&&&&&&&string&reportFormat&=&FileT36&&&&&&&&&&&&&string&outputfile&=&"Report.";&&//报表名称37&&&&&&&&&&&&&&ReportViewer&rview&=&new&ReportViewer();38&&&&&&&&&&&&&rview.ProcessingMode&=&ProcessingMode.L39&&&&&&&&&&&&&rview.LocalReport.ReportPath&=&Server.MapPath(TemplatePath);40&&&&&&&&&&&&&rview.LocalReport.DataSources.Clear();41&&&&&&&&&&&&&foreach&(ReportDataSource&re&in&reportDateSource)42&&&&&&&&&&&&&{43&&&&&&&&&&&&&&&&&rview.LocalReport.DataSources.Add(re);44&&&&&&&&&&&&&}45&46&&&&&&&&&&&&&if&(parameterList.Count&&&0)47&&&&&&&&&&&&&&&&&rview.LocalReport.SetParameters(parameterList);48&&&&&&&&&&&&&string&mimeType,&encoding,&extension,&deviceI49&&&&&&&&&&&&&string[]&50&&&&&&&&&&&&&Warning[]&51&&&&&&&&&&&&&deviceInfo&=&"&DeviceInfo&"&+&"&SimplePageHeaders&True&/SimplePageHeaders&"&+&"&/DeviceInfo&";52&53&&&&&&&&&&&&&byte[]&bytes&=&rview.LocalReport.Render(reportFormat,&deviceInfo,&out&mimeType,&out&encoding,&out&extension,&out&streamids,&out&warnings);54&55&&&&&&&&&&&&&//这里可以输入产生报表的时候有哪些警告信息56&&&&&&&&&&&&&//if&(warnings&!=&null&&&&warnings.Length&&&0)57&&&&&&&&&&&&&//{58&&&&&&&&&&&&&//&&&&LoggingManager&log&=&LoggingManager.GetLoggingManager();59&&&&&&&&&&&&&//&&&&foreach&(Warning&w&in&warnings)60&&&&&&&&&&&&&//&&&&{61&&&&&&&&&&&&&//&&&&&&&&(w.Message);62&&&&&&&&&&&&&//&&&&}63&&&&&&&&&&&&&//}64&&&&&&&&&&&&&&HttpContext.Current.Response.Buffer&=&true;65&&&&&&&&&&&&&HttpContext.Current.Response.Clear();66&&&&&&&&&&&&&HttpContext.Current.Response.ContentType&=&mimeT67&&&&&&&&&&&&&HttpContext.Current.Response.AddHeader("Content-Disposition",&"&filename="&+&outputfile&+&extension&+&";");68&&&&&&&&&&&&&HttpContext.Current.Response.BinaryWrite(bytes);69&&&&&&&&&&&&&HttpContext.Current.Response.End();70&&&&&&&&&}71&&&&&}72&}73&&
&&&&&& 然后让Default.aspx.cs继承CustomPageBase,然后在Default页面中新增一个Button,在Button的事件中提供产生Report所需要的参数,如下:
&1&using&S&2&&using&System.C&3&&using&System.C&4&&using&System.D&5&&using&System.L&6&&using&System.W&7&&using&System.Web.S&8&&using&System.Web.UI;&9&&using&System.Web.UI.HtmlC10&&using&System.Web.UI.WebC11&&using&System.Web.UI.WebControls.WebP12&&using&System.Data.SqlC13&&using&System.Collections.G14&&using&System.Xml.L15&&using&Microsoft.Reporting.WinF16&&using&RCLC.DataE17&18&&namespace&RCLC19&{20&&&&&public&partial&class&_Default&:&CustomPageBase21&&&&&{22&&&&&&&&&protected&void&Page_Load(object&sender,&EventArgs&e)23&&&&&&&&&{24&25&&&&&&&&&}26&27&&&&&&&&&protected&void&ButtonReportGenerate_Click(object&sender,&EventArgs&e)28&&&&&&&&&{29&&&&&&&&&&&&&List&ReportDataSource&&reportDataSource&=&new&List&ReportDataSource&();30&&&&&&&&&&&&&RportDataSet&ds&=&new&RportDataSet();31&&&&&&&&&&&&&string&templatePath&=&string.E32&&&&&&&&&&&&&string&totalRecords&=&string.E33&34&&&&&&&&&&&&&//获得数据35&&&&&&&&&&&&&&SqlConnection&conn&=&new&SqlConnection(ConfigurationManager.ConnectionStrings["LoggingConnectionString"].ConnectionString);36&&&&&&&&&&&&&SqlCommand&command&=&conn.CreateCommand();37&&&&&&&&&&&&&mandType&=&CommandType.T38&&&&&&&&&&&&&mandText&=&"SELECT&*&FROM&T_BC_LOGS";39&&&&&&&&&&&&&SqlDataAdapter&da&=&new&SqlDataAdapter(command);40&&&&&&&&&&&&&da.Fill(ds.T_BC_LOGS);41&42&&&&&&&&&&&&&//指定报表模板43&&&&&&&&&&&&&&templatePath&=&"ReportTemplate/LogReport.rdlc";44&45&&&&&&&&&&&&&//把获取的数据集合提供给在报表中名为RportDataSet_T_BC_LOGS数据集46&&&&&&&&&&&&&&reportDataSource.Add(new&ReportDataSource("RportDataSet_T_BC_LOGS",&ds.T_BC_LOGS));47&&&&&&&&&&&&&List&ReportParameter&&parameterList&=&new&List&ReportParameter&();48&&&&&&&&&&&&&////Generate&Report,&报表可以生成PDF,EXCEL及以其它形式,根据需求去设置49&&&&&&&&&&&&&&GetReportMultipleDataSourceFile(reportDataSource,&templatePath,&parameterList,&"pdf");50&&&&&&&&&}51&&&&&}52&}53&&
&&&&&&&&&&& 最后,选择这个页面,点击button就呆以产生你所需要的页面了,如下图所示。
&&&&&&&&&&& 通过这个项目,我们可以了解到如下内容:
如何创建一个DataSet
创建和编辑RDLC报表模板并绑定到数据集上
通过代码为RDLC提供参数
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&
喜欢该文的人也喜欢君,已阅读到文档的结尾了呢~~
rdlc和rdl的区别 ...
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
rdlc和rdl的区别
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口请教是用RDLC怎么做到一行排列多个标签 _ 古乐谱
请教是用RDLC怎么做到一行排列多个标签
/LinkUl&div&div &&&/这是第二列的第一个&&li&li&b&&ul&LinkUl&li&/li&li&这是第三列的第一个&&#47横向排列需要在CSS中设定一个浮点;这是第三列的第三个&/ul&&& class=&li&li&这是第一列的第二个&h3&这是第二列的第三个&/ul id=&&li&li&ul id=&/这是第二列的第二个&友情链接&&/li&&li&/&h3&li&&li&style& 也可以适用于& class=&这是第一列的第三个&li&ul3& }&/li&//li&&li&ul id=&;&&&li&/b&&ul&&li&&#47.LinkUl {ul2&&#47:ul1&&LinkUl&这是第三列的第二个&style&&/&& class=&&这是第一列的第一个&&lt,属性名为float
设定为Left 或者 Right 这两个有差别
如果是Left 它会往左开始 1 2 3 4 如果是 Right是 往右开始 4 3 2 1代码可以这么写&lt
一般还是加上好一点;}另外,display:box&div&&#47:455656&&/121212&lt:50%;在css里面要让两个class为box的DIV并排时只要这样定义即可;container&box&&#47:inline 是可以不加的,不过有时会在某些浏览器里面出现兼容问题.box {div class=&
&&例如HTML是这样;div class=&div&&gt给这两个DIV设定一个宽度;div class=&quot:
&div& display,然后定义float,说明一下;&gt:inline:&lt
试验了很久没搞出来,估计是float这个属性在块的行分布的计算上存在BUG,你看看这篇文章: /members/persons/lpjcom/blog/CSS%2CFloat%2C01/ 其中有一段: “如果居左的浮动被放置在其容器的左上脚,并且其后跟随一个同向的浮...
答案:36. 日照房间生紫烟,我在房间写作业。眼泪流下三千尺,一看作业木写完。
给这两个DIV设定一个宽度,然后定义float: display: 例如HTML是这样: 656 在css里面要让两个class为box的DIV并排时只要这样定义即可 .box {width:50%; float: display:} 另外,说明一下,display:inline 是...
你想说你的任务栏在鼠标经过时没有显示窗口缩略图吗
首先,右击那个 “位于电脑最下面那一行的,横着排列的,代表着打开的文件或网页‘最小化’的小标签”(即任务栏), 取消对“锁定任务栏”的勾选(点击√)。然后,可以看到那个 “位于电脑最下面那一行的,横着排列的,代表着打开的文件或网页“最小化”...
平分秋色 .div1 { width:90 float: } .div2 { width:80 float: } div { border:1px solid #EEEEEE; } window.onload = function () { rePointAll(); } function rePointAll() { rePoint("objElement", 0); rePoint("objElement...
你可以变成这里是内容这样就把一列变成一行了!希望能帮到你!
下面就是重要的标签: 创建一个HTML文档,是网页源代码的开始符和结束符,每一个网页的源代码必定是以这两个标签开始和结束. 设置文档标题和其它在网页中不显示的信息 设置文档的标题 最大的标题 预先格式化文本 下划线 黑体字 斜体字 打字机风...
横向排列需要在CSS中设定一个浮点,属性名为float 设定为Left 或者 Right 这两个有差别 如果是Left 它会往左开始 1 2 3 4 如果是 Right是 往右开始 4 3 2 1 代码可以这么写 .LinkUl { float: } 友情链接 这是第一列的第一个 这是第一列的第...
你确定你取到的数据是多行的吗?你更一下程序,搞不好你真的只取了一行啊?
返回主页:
本文网址:/view-.html}

我要回帖

更多关于 几个div在一行排列 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信