【问题标题】:Webforms ReportViewer pagination without showing the toolbar?Webforms ReportViewer 分页不显示工具栏?
【发布时间】:2012-05-07 15:03:35
【问题描述】:

我正在考虑更换 ReportViewer 工具栏。现在只是在做发现。我知道JavaScript api for the report viewer。这不包括用于分页控件的 API。

我已经在生成的 HTML 中进行了挖掘,并弄清楚了如何触发回发来进行分页。即使工具栏未显示,在 Javascript 中调用以下命令也有效。

__doPostBack("ReportViewer1$ctl05$ctl00$Next$ctl00")

我不知道以这样的方式回电的陷阱。因为传递给方法的字符串是输入按钮的名称。似乎名字可以改变。我也不知道 $ctl 的东西是什么意思。

我知道如何通过将交互式高度设置为零来让 reportviewer 不分页报告。我现在只是在探索我所有的选择。

有没有更简单的方法在不显示 ReportViewer 工具栏的情况下进行分页?如果没有,触发回发的陷阱是什么?

【问题讨论】:

    标签: asp.net reporting-services webforms reportviewer


    【解决方案1】:

    对此的最终解决方案是使用客户参数进行回发。

    客户端 JS:

    function loadPage(pageNumber) {
        $('#__EVENTTARGET').val('pagination');
        $('#__EVENTARGUMENT').val(<pageNumberToGoTo>);
        $('#form1').submit();
    }
    

    填充的两个字段是默认为 ASP.NET 回发创建的。

    ASP.NET 页面中的服务器端 C# OnLoad 事件:

    if (Request.Form["__EVENTTARGET"] == "pagination")
    {
        int pageNumber = int.Parse(Request.Form["__EVENTARGUMENT"]);
        _reportViewer.CurrentPage = pageNumber;
    }  
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-22
      • 2010-09-11
      • 1970-01-01
      • 2014-09-15
      • 1970-01-01
      • 2013-09-10
      相关资源
      最近更新 更多