Страница обновляется при загрузке Crystal Report - PullRequest
0 голосов
/ 06 сентября 2018

Я работаю над проектом Asp.net, и у нас есть несколько интерфейсов для загрузки соответствующих отчетов.

Мой HTML-код выглядит следующим образом:

<form id="form1" runat="server">

    <div>
         /*----html code for selecting parameters----*/

         <asp:Button Text="Submit"  AutoPostBack="False" CssClass="btn btn-primary" runat="server" ID="btnSubmit" OnClientClick="javascript:return Validate()" OnClick="btnSubmit_Click" />
         /*----Button to check validity and load report----*/

    </div>

    /*----Some html codes----*/

    <CR:CrystalReportViewer ID="CRViewer" runat="server" AutoDataBind="true" EnableParameterPrompt="False" ReuseParameterValuesOnRefresh="True" ToolPanelView="None" EnableDatabaseLogonPrompt="False" HasCrystalLogo="False" HasToggleGroupTreeButton="False" HasToggleParameterPanelButton="False" HasDrilldownTabs="False" HasDrillUpButton="False" HasRefreshButton="True" HasPageNavigationButtons="True" HasPrintButton="True" DisplayToolbar="True" />
    /*----this is where report get loaded----*/



</form>

после выбора параметров и нажатия кнопки отправки отчет загружается, но страница перезагружается и все параметры сбрасываются.

Как предотвратить сброс параметров?

1 Ответ

0 голосов
/ 06 сентября 2018

Чтобы предотвратить перезагрузку всей страницы, вам нужно использовать панель обновления для частичной обратной передачи.

Пример будет выглядеть следующим образом

<asp:UpdatePanel ID="UpdatePanel" runat="server>
    <ContentTemplate>
   <CR:CrystalReportViewer ID="CRViewer" runat="server" AutoDataBind="true" EnableParameterPrompt="False" ReuseParameterValuesOnRefresh="True" ToolPanelView="None" EnableDatabaseLogonPrompt="False" HasCrystalLogo="False" HasToggleGroupTreeButton="False" HasToggleParameterPanelButton="False" HasDrilldownTabs="False" HasDrillUpButton="False" HasRefreshButton="True" HasPageNavigationButtons="True" HasPrintButton="True" DisplayToolbar="True" />   
   </ContentTemplate>
   <Triggers>
      <asp:AsyncPostBackTrigger ControlID="btnSubmit" />
   </Triggers>
</asp:UpdatePanel>

Сделайте кнопку триггером для панели обновленияэто означает, что если вы нажмете кнопку, перезагрузится только часть внутри панели обновления, так что вы не потеряете значения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...