DataGrid 分頁問題 -- 無法響應 PageIndexChanged 事件

來源:互聯網
上載者:User
datagrid|分頁|問題|響應  

最近做網站遇到了一個奇怪的問題,在進行DataGrid進行分頁時,無法響應 PageIndexChanged 事件 。

我也查閱了很多關於這方面的文章,可是還是沒有得到解決方案。 在和別人的探討中發現了癥結所在

首先,我先將代碼貼過來:

下面是DataGird控制項的HTML代碼(不包含欄位綁定)

<asp:datagrid id="SearchGrid" runat="server" width="100%"     autogeneratecolumns="False"  EnableViewState="true"    AllowPaging="True" PageSize="3" PagerStyle-Mode="NumericPages" PagerStyle-HorizontalAlign="Right" PagerStyle-pagebuttoncount="5" onpageindexchanged="SearchGrid_PageIChanged" >

下面是後代碼:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            If Not IsPostBack Then
                BindGrid()
            End If
        End Sub

public Sub SearchGrid_PageIChanged(ByVal s As Object, ByVal e As DataGridPageChangedEventArgs)
            SearchGrid.CurrentPageIndex = e.NewPageIndex
            BindGrid()
 End Sub

Public Sub BindGrid()
            SearchGrid.DataSource = (綁定你的資料來源)

            SearchGrid.DataBind()

  End Sub

對與上面的代碼,第一次載入頁面都可以得到正確的顯示結果和頁數,但是切換頁面時不能響應分頁事件

經過跟蹤程式發現切換頁面每次都要調用PageLoad , 我把DataBind移出Is notpostback後,分頁可以正常

說明每次在回送頁面時都要重新給DataGrid載入資料,隨即考慮到DataGrid設定了EnableViewState為False

DataGrid資料沒有保留下來,導致DataGrid只有在每次載入都重新綁定才能實現保持狀態而正常分頁。

        因此將EnableVIewState設定為True ,問題解決。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。