2008-11-12 45 views
1

我有一個Web應用程序正在使用具有自己的內置分頁的數據存儲。 PagedResult類告訴我總頁數。我想這樣做(我結合ASP.NET的GridView後)做到這一點:您可以「分配」ASP.NET GridView的PageCount屬性嗎?

MyGridView.PageCount = thePageCount; 

,然後讓GridView的神奇打造分頁鏈接,因爲它通常會如果它做的事情本身。

問題是,「PageCount」是一個只讀屬性...所以,我怎麼能做到這一點?

回答

2

要使用內置分頁,GridView將與數據源進行交互。 GridView具有PageSize的可設置屬性。

如果使用ObjectDataSource,則同時配置SelectMethod和SelectCountMethod。您可以修改您的PagedResult類以返回記錄數而不是頁數,或者將PagedResult調用包裝在一個方法中,以將頁計數轉換爲記錄計數(PageCount * PageSize)。

如果您的PagedResult類僅用於支持Web應用程序,則應考慮將其修改爲更像典型的分頁數據源。

0

您可以創建自己的類來擴展GridView並覆蓋PageCount getter方法以從PagedResult類中返回值。

+0

我已經反映在GridView,它的實際使用私有字段...所以覆蓋大衆「頁頁次」場實際上不會工作。雖然好想。 – 2008-11-13 00:21:30

0
 Dim myCount as Integer = 1 'this sets the page count to 1 
     While (oreader.Read()) 
      myCount += 1 'increments once for everytime a item is counted 
      'this sets an array for the items to go into 
      idFname = oreader.GetOrdinal("workCenter") 
      'this retrieves the values at those indices 
      fName = oreader.GetValue(idFname) 
      BulletedList1.Items.Add(fName) 
     End While 

    Catch ex As Exception 
     BulletedList1.Items.Add("No Workcenters Found") 
    Finally 
     oreader.Close() 
     oconn.Close() 
    End Try 
End If 
Me.insertItemForm.PagerSettings.PageButtonCount = myCount 'sets the page count to number of items in gridview or formview etc. 
相關問題