Это нормально для Page_Load срабатывать при нажатии на страницу GridView внутри UpdatePanel? - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть этот код на моей странице aspx:

<form id="form2" runat="server">
  <asp:ScriptManager ID="ItemsScriptManager" runat="server" EnablePartialRendering="true" />
  <asp:Button runat="server" ID="SearchButton" OnClick="ItemsSearch" Text="Search" />
  <asp:UpdatePanel runat="server" ID="ItemsUpdatePanel">
    <ContentTemplate>
      <asp:ObjectDataSource runat="server" ID="ItemsDS"
        TypeName="TemplateGridViewODSPagingSorting.ItemDAO" SelectMethod="GetItems" />
      <asp:GridView runat="server" ID="ItemsGridView" DataSourceID="ItemsDS"
        AllowPaging="true" AllowSorting="true" PageSize="4">
      </asp:GridView>
    </ContentTemplate>
  </asp:UpdatePanel>
</form>

При нажатии на другой странице GridView вызывается Page_Load, это нормальное поведение для частичной обратной передачи?

Ответы [ 2 ]

1 голос
/ 01 сентября 2011

Да, во время обновления панели обновления, page_load будет вызываться при каждой асинхронной обратной передаче на сервер, чтобы преодолеть это, вы можете использовать jquery ajax.

1 голос
/ 01 сентября 2011

Частичное отображение с использованием UpdatePanel не меняет и не влияет на весь жизненный цикл страницы в ASP.NET.

Это небольшая хитрость, используемая для повторного рендеринга только определенной области страницы в браузереUpdatePanel), но больше ничего не меняется, так что да, это нормально, чтобы Page_Load и все другие события запускались как обычно;это должно быть так, иначе это не сработает:)

...