簡體   English   中英

下拉列表中選定索引發生回發后頁面未呈現已更改

[英]Page not rendering after postback occuring in dropdownlist selectedindex changed

這是一個奇怪的問題。 我在下拉列表selectedIndexchanged中設置了gridview的頁面大小,這是我的gridview尋呼機模板。 這是我的HTML源代碼

<PagerTemplate>
                        <div class="grid-footer">
                            <div class="gridfooter_size">                           <asp:DropDownList ID="pageSize2" runat="server" AutoPostBack="true" 
                                    onselectedindexchanged="pageSize2_SelectedIndexChanged">
                                <asp:ListItem Value="10" Selected="True">10</asp:ListItem>
                                    <asp:ListItem Value="25">25</asp:ListItem>
                                    <asp:ListItem Value="50">50</asp:ListItem>
                                    <asp:ListItem Value="100">100</asp:ListItem>                                  
                              </asp:DropDownList>

                            </div>
                            <div class="gridfooter_info">
                                <asp:Label ID="lblSummary" runat="server"></asp:Label>
                            </div>
                            <div class="gridfooter_paginate">
                                <asp:LinkButton ID="lnkFirstbnt" runat="server" CommandName="Page" CssClass="pagerclass-nxt"
                                    CausesValidation="false" CommandArgument="First">First</asp:LinkButton>
                                <asp:LinkButton ID="lnkPrevbnt" runat="server" CommandName="Page" CssClass="pagerclass-prev"
                                    CausesValidation="false" CommandArgument="Prev">Previous</asp:LinkButton>
                                <asp:Label ID="CurrentPage" CssClass="pagerclass-number" Visible="false" runat="server"
                                    Text="Label"></asp:Label>
                                <asp:LinkButton ID="lnkNextbnt" runat="server" CommandName="Page" CssClass="pagerclass-next"
                                    CausesValidation="false" CommandArgument="Next">Next</asp:LinkButton>
                                <asp:LinkButton ID="lnkLastbnt" runat="server" CommandName="Page" CssClass="pagerclass-last"
                                    CausesValidation="false" CommandArgument="Last">Last</asp:LinkButton>
                            </div>
                        </div>
                    </PagerTemplate>

這是我的代碼背后

Protected Sub pageSize2_SelectedIndexChanged(sender As Object, e As System.EventArgs)
    Dim gvr2 As GridViewRow = GridView2.BottomPagerRow
    Dim ddPageSize2 As DropDownList = DirectCast(gvr2.Cells(0).FindControl("pageSize2"), DropDownList)
    GridView2.PageSize = Convert.ToInt32(ddPageSize2.SelectedValue)
    Call GetDataTables2()
End Sub

發生回發時,將為dropdownlist的所有選定值觸發pageSize2_SelectedIndexChanged事件,但不會呈現該頁面。 它從pageSize2_SelectedIndexChanged事件中跳出Call GetDataTables2()方法。 如果下拉列表選擇的值為10,則頁面正在呈現 ,這很奇怪。 可能是什么問題,請提出解決方案

問題是,我在同一更新面板中使用了兩個gridviews。 在這兩個gridview 的模板下,具有相同ID的controsl具有相同的ID 這可能是Visual Studio中的錯誤。 在刪除updatepanel之前,它沒有告訴我任何編譯時異常,甚至沒有在運行時告訴我。 我已經更改了控件ID。 現在工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM