Загрузка динамических элементов управления на основе значений с главной страницы в ASP.NET
Привет,
Я пытаюсь добавить представления в Мультивидение
но я хочу добавить представления, основанные на сеансе, обновленном при нажатии кнопки на главной странице. Но поскольку представления должны быть добавлены в страницу содержимого page_init, а нажатие кнопки master page запускается после инициализации страницы/control init, представление загружается данными на основе ранее установленных значений сеанса. пожалуйста, посоветуйте способ загрузки представления на основе сеанса, установленного в событии щелчка главной кнопки
Код
Что я уже пробовал:
<dx:ASPxRoundPanel Width="100%" ShowHeader="False" ID="ASPxRoundPanel1" runat="server"> <PanelCollection> <dx:PanelContent ID="PanelContent2" runat="server"> <asp:Label ID="lblnorecords" CssClass="Utilization" runat="server"></asp:Label> <asp:MultiView OnInit="view_Init" ID="MultiView1" runat="server"> <%-- <asp:View ID="View1" runat="server"> </asp:View>--%> </asp:MultiView> <br /> <dx:ASPxPager ID="ASPxPager1" runat="server" ItemsPerPage="1" OnPageIndexChanged="ASPxPager1_PageIndexChanged" style="float: left; clear: both; margin-top: 16px"> <LastPageButton Visible="True" /> <FirstPageButton Visible="True" /> <Summary Position="Inside" Text="Page {0} of {1} " /> </dx:ASPxPager> </dx:PanelContent> </PanelCollection> </dx:ASPxRoundPanel
protected void view_Init(object sender, EventArgs e) { RenderProductGridviews(); if (MultiView1.Views.Count > 0) MultiView1.ActiveViewIndex = MultiView1.ActiveViewIndex < 0 ? 0 : ASPxPager1.PageIndex; } protected void RenderProductGridviews() { try { param=session["searchparam"]; DataSet ds=obj.call(param.lo,param.pgm,param.tp);//getting called before assigning session from master page in the "view" button click. so taking previously assigned session values } catch(Exception ex) { }
Sinisa Hajnal
Почему бы вам просто не изменить дизайн приложения, чтобы не зависеть от события init? Загрузите необходимые данные и визуализируйте их на более позднем событии.
Или...передайте параметр поиска как часть url-адреса, таким образом, вы будете иметь информацию независимо от жизненного цикла Страницы