我正在使用aspx 11在iframe中显示报告( ReportViewer页面被加载到iframe中)。它可以正确地显示第一页。但是当我点击下一页时,它会再次加载第一页。即使我在文本框中手动键入页码,它也只加载第一页。看起来,它不会在服务器端触发页面导航事件。如果我在后面的代码中将currentpage属性设置为2,那么无论我提供什么设置,它也只加载第1页。找了好几天了。没有解决方案。
任何帮助都将不胜感激。
谢谢
发布于 2015-02-20 15:08:20
应用此逻辑
从container2
我不知道这是否会对你有帮助,但数据库中的记录可以用这种方式分页。
发布于 2015-02-20 15:24:59
我也尝试过这个逻辑。但主要的问题是,即使按下“下一步”按钮,ReportViewer.CurrentPage也总是为0(在我的例子中)。因此,它将再次显示container1记录。这是我的代码:
public void SetReportData(ref ReportViewer objRptVwr, ReportParameter[] rptParam, string moduleName, string reportName, string dsName, System.Data.DataTable dtFinal){
objRptVwr.Reset();
objRptVwr.ProcessingMode = ProcessingMode.Local;
objRptVwr.LocalReport.ReportPath = HttpContext.Current.Server.MapPath("~/ReportViewer/" + moduleName + "/" + reportName + ".rdlc");
if (rptParam != null)
objRptVwr.LocalReport.SetParameters(rptParam);
objRptVwr.ShowPrintButton = true;
objRptVwr.ShowParameterPrompts = true;
objRptVwr.AsyncRendering = false;
objRptVwr.InteractivityPostBackMode = InteractivityPostBackMode.AlwaysSynchronous;
objRptVwr.ShowBackButton = true;
objRptVwr.SizeToReportContent = false;
objRptVwr.PageCountMode = PageCountMode.Actual;
objRptVwr.ShowExportControls = true;
objRptVwr.ShowPageNavigationControls = true;
objRptVwr.ShowToolBar = true;
objRptVwr.ShowWaitControlCancelLink = false;
objRptVwr.ShowZoomControl = true;
objRptVwr.LocalReport.EnableExternalImages = true;
objRptVwr.ExportContentDisposition = ContentDisposition.AlwaysInline;
ReportDataSource reportDataSource = new ReportDataSource(dsName, (System.Data.DataTable)dtFinal);
objRptVwr.LocalReport.DataSources.Clear();
objRptVwr.LocalReport.DataSources.Add(reportDataSource);
objRptVwr.LocalReport.Refresh();
}发布于 2015-02-20 15:41:55
我所做的是,生成的按钮将根据列表大小。每个按钮(可以是li标记)将有一个文本字段,其中包含动态的0、5、10等值(每页5个元素的情况下)。
单击一个按钮,我得到的文本字段(例如index)的值,并将结果集位置移动到index,并打印最多5个元素的记录。
https://stackoverflow.com/questions/28623208
复制相似问题