4.2 矩阵控件使用介绍
1) 矩阵控件主要用于显示CrossTable之类的报表,因此其列数可以是Static的,也可以是Dynamic并且Can grow的,关于矩阵控件,在RDLC协议规范里也有介绍,其大致内容可以用下图表示。

2) 新建报表文件,命名为ctlMatrixDemo.rdlc; 3) 在ctlMatrixDemo.rdlc设计器中,拖入Matrix控件,默认情况下是2行2列,左上角单元格为空白区域(通常用来显示报表摘要信息如产品/年度等),右上单元格显示为“列”,单击此处可以增加列分组,左下单元格显示为“行”,单击此处可以添加行分组,右下单元格显示为“数据”,单击此处可以添加静态行、静态列。 4) 在矩阵左上角单元格空白区域拖入矩形控件,然后在该矩形控件中拖入一个折线控件和两个文本框控件,折线当做矩形的对角线,两个文本框内容为产品和年度分布在折线两侧。 5) 增加两个行分组,分别为matrix1_RowGroup1和matrix1_RowGroup2,matrix1_RowGroup1的表达式为=Fields!ProdCat.Value,matrix1_RowGroup2的表达式为=Fields!SubCat.Value。 6) 增加两个列分组,分别为matrix1_ColumnGroup1何matrix1_ColumnGroup2,matrix1_ColumnGroup1的表达式为=Fields!OrderYear.Value,matrix1_ColumnGroup2的表达式为=Fields!OrderQtr.Value。 7) 在“数据”单元格中编辑表达式=Sum(CDbl(Fields!Sales.Value)) 8) 设计完之后,效果如下图所示;
9) 新建窗体FrmCtlMatrixDemo,然后在该窗体上添加ReportViewer控件,在窗体FrmCtlMatrixDemo代码窗口里输入以下代码:
private void FrmCtlMatrixDemo_Load(object sender, EventArgs e)
{
this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;
this.reportViewer1.LocalReport.ReportPath = @"rdlc/ctlMatrixDemo.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];
}
10) 运行效果如下图所示

因为不知道如何在博文中上传附件,相关资料已经上传到CSDN,大家可以搜索“RDLC使用手册”下载。
本文详细介绍RDLC矩阵控件的使用方法,包括创建报表、添加行列分组及数据展示等步骤,并通过实例演示如何利用矩阵控件进行复杂数据的可视化呈现。
287

被折叠的 条评论
为什么被折叠?



