zoukankan      html  css  js  c++  java
  • RDLC使用手册_RDLC常用控件介绍

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/chuangxin/archive/2009/04/09/4058686.aspx

    RDLC设计工具箱上总共有9种控件:文本框(TextBox)、折线(Line)、表(Table)、矩阵(Matrix)、矩形(Rectangle)、列表(List)、子报表(SubReport)、图表控件(Chart)、图像控件(Image)。下图ctlsDemo.rdlc设计器所示为所有控件的设计演示。

     ctlsDemo


    1)    由于表格控件、矩阵控件、列表控件和图表控件必须填充数据集,因此把所有控件布局完毕之后,创建一个数据集。解决方案资源管理器中,选中RDLCDev工程,右击添加新建项,在新建项类型模板里选择“数据集”,取名“ctlsDemo.xsd”,单击“添加”。

    ctlsDemo.xsd添加完毕之后,在解决方案资源管理器中会增加一个ctlsDemo.xsd文件,并前VS IDE会自动打开ctlsDemo.xsd设计页面。在设计页面中右击,添加Datatable,将其命名为vSales,为vSales表添加列,列信息如下:

        ProdCat           System.String

        SubCat            System.String

        OrderYear        System.Int32

        OrderQtr         System.String

            Sales              System.Double

    2)    文本框控件、折线控件、矩形控件使用相对简单,这里不细说;

    3)    Image控件,现在RDLC设计器模式下,选择“报表”菜单,“嵌入图像”,在“嵌入图像”对话框中,载入一个本地图像文件即可。然后设置Image控件的Source属性为Embedded,设置Value属性为刚才处理的嵌入图像即可。当然还有别的方式可以显示图像,大家可以Google一下,关键字为RDLC、嵌入图像;

    4)    图表控件,使用图表控件的一个关键是要设置好图表属性页面中的数据TAB页相关内容。主要有值、类别组和序列组定义,大家可以参考Demo;

    5)    表格控件、矩阵控件和子报表控件,在后续内容中会详细介绍;


     

    4.1 表格控件使用介绍

    1)    Table控件是RDLC报表显示数据的一个核心控件,关于Table控件,在微软提供的RDLC规范里有详细的介绍,其大致内容可以用下述的一张类UML图来表示;

    ctlTableDemo_0
     

    2)    新建报表文件,命名为ctlTableDemo.rdlc;

    3)    在ctlTableDemo.rdlc设计器中,拖入Table控件,默认情况下是3行3列,其中第1行为表头行(我们理解为列标题行),第二行为详细信息行(我们理解为报表内容展示区域),第三行为表尾行(我们理解为汇总区域)。可以整行选中,然后右击鼠标添加行或者删除行,也可以整列选中,然后右击鼠标添加或者删除列。上文中提到的数据集合有5个字段,因此需要5列来显示,为此需要增加两列。

    4)    在数据源窗口中(如果没有显示的话,选择【数据】菜单下的【显示数据源】即可)选择上文中创建的ctlsDemo.xsd数据集,将ProdCat、SubCat、OrderYear  、OrderQtr和Sales分别拖入到Table控件的详细信息行的不同列中去。

    5)    设置标题行文字显示都居中,Sales的内容显示右对齐,ProdCat、SubCat、OrderYear、OrderQtr和Sales文本框的字体颜色全部设置成Blue,Sales文本框由于显示的内容为销售额,因此需设置数字显示格式,小数位数。鼠标右击Sales文本框,选择【属性】,在文本框属性窗口中,选择格式Tab页,在格式代码处,选择数字1,234.00格式即可,选择完毕之后该文本框的数字就以逗号千分位作为分割符,保留2位小数显示,效果如下图所示。

    ctlTableDemo_1
    6)    插入一个组实现分组统计功能。选中整行,鼠标右击,选择【插入组】,弹出分组和排序属性对话框,设置分组名称、分组方式、是否显示组头或者组尾等属性即可,本文分组设置如下:

    ·分组名称:table1_Group1

    ·分组表达式:=Fields!ProdCat.Value;=Fields!SubCat.Value;=Fields!OrderYear.Value,实现产品年度销售额汇总统计功能。

    ·不显示组头、显示组尾(至于组头、组尾是个什么样的东西,大家只要动手试一下就一目了然了)

    ·在textbox15中输入汉字“合计”,在textbox16文本框中输入合计表达式=Sum(CDbl(Fields!Sales.Value)),设置完之后效果如下图所示。

     ctlTableDemo_2


     

    7)    新建窗体FrmCtlTableDemo,然后在该窗体上添加ReportViewer控件,在窗体FrmCtlTableDemo代码窗口里输入以下代码:

            private void FrmCtlTableDemo_Load(object sender, EventArgs e)

            {

                this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;

                this.reportViewer1.LocalReport.ReportPath = @"rdlc\ctlTableDemo.rdlc";

                //

                reportViewer1.LocalReport.DataSources.Add(new ReportDataSource("ctlsDemo_vSales", LoadData()));

                //

                this.reportViewer1.RefreshReport();

            }

            private DataTable LoadData()

            {

                DataSet dataSet = new DataSet();

                dataSet.ReadXml(@"data\ctlsDemo.xml");

                return dataSet.Tables[0];

            }

    8)    运行效果如下图所示

     ctlTableDemo_3

        因为不知道如何在博文中上传附件,相关资料已经上传到CSDN,大家可以搜索“RDLC使用手册”下载。


     

  • 相关阅读:
    沙盒中Documents、Library和tmp的用处 iOS
    LeetCode二叉树的前序遍历、中序遍历、后序遍历、层序遍历、最大深度Swift
    LeetCode判断一个单向链表是否有环?
    C#字符串处理
    【源码分享】十套C#管理系统程序源码
    【源码分享XY01】C#学生管理系统
    HL7的简单介绍
    【源码分享XY06】C#MVC+Sqlserver员工信息管理系统
    【源码分享XY04】php+MySQL开发的图书管理系统
    js将数值转为个十百千万显示
  • 原文地址:https://www.cnblogs.com/millen/p/1944356.html
Copyright © 2011-2022 走看看