2016-02-25 9 views
0

Прежде всего, я хотел бы проигнорировать мой плохой английский, потому что я принимаю помощь от google translate;viewState проиграл, когда вы нажмете кнопку «Назад» в своем браузере.

Я имею дело с отчетом сборочного страницы, которая содержит тот же N DIV-х и DIV обрабатывается с UpdatePanel, как вы можете видеть в примере ниже:

asp:ScriptManager EnablePartialRendering="true" ID="ScpManager" runat="server" EnableHistory="true"> 
</asp:ScriptManager> 
<asp:UpdatePanel ID="updProcesso" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="false"> 
    <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="btnAcima" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnAbaixo" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnSelecionar" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnDesfazer" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnMudaOrdem" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnMudaOperacao" EventName="Click" /> 
    </Triggers> 
    <ContentTemplate> 
     <table> 
      <tr> 
       <td> 
        Campos Disponíveis 
       </td> 
       <td> 
       </td> 
      </tr> 
      <tr> 
       <td> 
        <asp:ListBox ID="lstOrigem" CssClass="DropDownlist" runat="server" Height="200px" 
         Width="250px" SelectionMode="Multiple"></asp:ListBox> 
       </td> 
       <td> 
        <asp:Button ID="btnAcima" CssClass="Botao" runat="server" Text="Mover para Cima" 
         Width="110px" /><br /> 
        <br /> 
        <asp:Button ID="btnAbaixo" CssClass="Botao" runat="server" Text="Mover para Baixo" 
         Width="110px" /><br /> 
        <br /> 
        <asp:Button ID="btnSelecionar" CssClass="Botao" runat="server" Text="Selecionar" 
         Width="110px" /><br /> 
        <br /> 
        <asp:Button ID="btnDesfazer" CssClass="Botao" runat="server" Text="Desfazer Seleção" 
         Width="110px" /> 
       </td> 
      </tr> 
     </table> 
     <table> 
      <tr> 
       <td> 
        Campos Selecionados 
       </td> 
       <td> 
        Ordem 
       </td> 
       <td> 
       </td> 
       <td> 
        Operação 
       </td> 
      </tr> 
      <tr> 
       <td> 
        <asp:ListBox ID="lstDestino" CssClass="DropDownlist" runat="server" Height="200px" 
         Width="250px" SelectionMode="Multiple"></asp:ListBox> 
       </td> 
       <td> 
        <asp:ListBox ID="lstOrdem" CssClass="DropDownlist" runat="server" Height="200px" 
         Width="50px"></asp:ListBox> 
       </td> 
       <td valign="top"> 
        <asp:Button ID="btnMudaOrdem" CssClass="Botao" runat="server" Text="Mudar Ordem" 
         Width="95px" /> 
       </td> 
       <td> 
        <asp:ListBox ID="lstOperacao" CssClass="DropDownlist" runat="server" Height="200px" 
         Width="115px"></asp:ListBox> 
       </td> 
       <td valign="top"> 
        <asp:Button ID="btnMudaOperacao" CssClass="Botao" runat="server" Text="Mudar Operação" 
         Width="110px" /> 
       </td> 
      </tr> 
      <tr> 
       <td colspan="3"> 
       </td> 
      </tr> 
     </table> 
    </ContentTemplate> 
</asp:UpdatePanel> 

Я нашел большой проблемой является то, что при переадресации на страницу, которая генерирует отчет, и нажимать на обратную сторону самого браузера, - это потеря всех параметров для того же самого без манипуляций с UpdatePanel, setados для генерации отчета. То, что мне кажется, это потеря viewState. Я попытался внедрить

Однако использование страницы «Запрос» приводит к возврату и не обрабатывает необходимую форму. Я нашел множество случаев в Интернете, не более подходящее решение для этого случая. Мне хотелось бы, чтобы мы смогли преодолеть это препятствие.

Зная, что вариант реализации кнопки «Назад» на другой странице, приносящей параметры, не будет правильным решением, поскольку это не помешает пользователю вернуться самому браузеру.

ответ

0

попробуйте включить ViewState на уровне страницы добавить этот EnableViewState="false" на странице заголовка

+0

К сожалению, потеря данных таким же образом, но происходит потеря даже в собственных постбэков страниц. – user2992172

+0

Запускаете ли вы сайт на веб-ферме? –

Смежные вопросы