我在ASP.NET WebForms应用程序中使用ReportViewer控件来显示(以及可选地导出/打印)报表。标准的东西真的。
但是,我的用户抱怨工具栏会滚动报告内容:因此,如果他们想要移动到下一页,则需要先滚动回页面顶部。
我找不到任何文章(此处或其他地方)指示使工具栏静态的任何方法(如,工具栏停留在页面顶部,报告内容滚动到下面)。这里的任何人都可以指出一种方法可以允许这个吗?
感谢。
答案 0 :(得分:0)
您是否为reportviewer设置了AsyncRendering =“True”?这将创建一个呈现报告的iframe。这将允许报告独立滚动。我假设您的reportviewer标记中存在ShowToolBar =“true”
答案 1 :(得分:0)
即使我使用报表查看器控件来显示webform上的数据。但是,对我来说,工具栏永远不会向下滚动。我已将我的reportviewer控制代码放在下面。请检查它是否有任何帮助。
<rsweb:ReportViewer runat="server" ID="rvData" ShowCredentialPrompts="False" ShowDocumentMapButton="False"
ShowExportControls="true" ShowFindControls="False" ShowParameterPrompts="False"
ShowPrintButton="true" ShowPromptAreaButton="False" ShowRefreshButton="False"
ShowReportBody="True" ShowToolBar="true" ShowZoomControl="False" Visible="false"
ShowPageNavigationControls="true" BackColor="#C8C8C8" LinkActiveColor="#0066CC"
Width="100%" Height="600px">
</rsweb:ReportViewer>
如果您希望报告标题(不是工具栏)保持在最顶层(冻结),我可以告诉您如何...
答案 2 :(得分:0)
根据我对rt2800响应的评论,问题与针对ReportViewer控件设置的高度有关。我用一个小的JavaScript解决了这个问题,它根据屏幕上的可用空间调整了控件的大小......
<script type="text/javascript">
function resizeFormToClientHeight() {
var reportViewer = document.getElementById("<%= form.ClientID %>");
form.style.height = document.documentElement.clientHeight + "px";
}
resizeFormToClientHeight();
window.onresize = function resize() { resizeFormToClientHeight(); }
</script>