test.frx文件有3個報表頁,我想在滿足某條件時,只顯示其中的一個報表頁,代碼如何寫呢?答:1、給FastReport報表控件增加onPRerender事件處理: <cc1:WebReport ... onprerender="WebReport1_PreRender" /> 2、protected void WebReport1_PreRender(object sender, EventArgs e) { if (mCurPage == 2) { WebReport1.SetPage(0); // 顯示第一個報表頁 } }---------------------------------------------------------/// <summary> /// WebReport1.Report.Load(Server.MapPath("~/Rpt/test.frx")); // 在加載報表文件后,才能調用本函數,不然是獲取不到頁數的? /// 獲取當前頁,編號從1開始 /// </summary> /// <param name="wb"></param> /// <returns></returns> public int GetReportCurrentPage(FastReport.Web.WebReport wb) { string page = Request.Params["WebReport1$ctl25"]; if (string.IsNullOrEmpty(page)) return 1; int ipage = Convert.ToInt32(page); if (!string.IsNullOrEmpty(Request.Params["WebReport1$ctl22.x"])) return --iPage; // 點上一頁 if (!string.IsNullOrEmpty(Request.Params["WebReport1$ctl29.x"])) return ++iPage; // 點下一頁 if (!string.IsNullOrEmpty(Request.Params["WebReport1$ctl20.x"])) return 1; // 點第一頁 if (!string.IsNullOrEmpty(Request.Params["WebReport1$ctl31.x"])) return wb.TotalPages; // 點最后頁 if (iPage > wb.TotalPages) return wb.TotalPages; if (iPage < 1) return 1; return iPage; }
新聞熱點
疑難解答