rdlc报表开发笔记

rdlc报表开发是以DataSet为基础的,所以首先你得新建一个xsd文件,在xsd文件里添加DataTable.

接下来新建rdlc文件,拖入Table控件,向导会提示你建数据源,选择DataSet,以及给DataSet命名(这个名字需要与程序中对应)

rdlc的文本的值支持多语言的写法:

=IIF(Parameters!Language.Value="zh-CN","区域","Region")

=IIF(Parameters!Language.Value="zh-CN",Fields!RegionCN.Value,Fields!RegionEN.Value)

若要执行脚本,请选中此文本框,右键文本框属性,Action,Go to URL,Select URL其表达式为:= "javascript:ViewStoreLicense("& Fields!StoreLicenseId.Value &")",然后页面中要有对应的javascript函数,如下:

<script type="text/javascript">
        function ViewStoreLicense(StoreLicenseId) {
            var x = screen.width / 2 - 800 / 2;
            var y = screen.height / 2 - 600 / 2;
            window.open("../LicenseManager/StoreLicenseInfo.aspx?Action=5&BusinessDataID=" + StoreLicenseId, "StoreLicense", "location=1,status=1,scrollbars=1, left=" + x + ",top=" + y + ", width=800,height=600");
        }
    </script>

页面中:

<rsweb:ReportViewer ID="rpViewer" runat="server" Width="100%" Font-Names="Verdana"
                    Font-Size="8pt" ShowDocumentMapButton="False" ShowRefreshButton="False" ShowZoomControl="False"
                    SizeToReportContent="True" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt"
                    HyperlinkTarget="_self" BackColor="Transparent" BorderColor="Transparent"
                    ShowPrintButton="False">
                    <LocalReport EnableHyperlinks="True">
                    </LocalReport>
</rsweb:ReportViewer>

            rpViewer.LocalReport.ReportPath = @"bin\Forms\Report\StoreList.rdlc";
            rpViewer.LocalReport.SetParameters(new ReportParameter("Language", Language));
            rpViewer.PageCountMode = PageCountMode.Actual;
            DataTable dtMain = CAReport.GetCompliancedStoreList(LicenseTypeId, StoreNo);

            if (dtMain.Rows.Count > 0)
            {
                rpViewer.LocalReport.DataSources.Clear();
                ReportDataSource rds = new ReportDataSource("objReportCN", dtMain);
                rpViewer.LocalReport.DataSources.Add(rds);
                rpViewer.LocalReport.Refresh();
            }

隔行换色:

选中一个TextBox,设置其BackgroundColor=IIF(RowNumber(nothing) mod 2 = 0, "#d3f0ff", "Transparent")

转载于:https://www.cnblogs.com/zhangsongshan/archive/2013/05/02/3054656.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值