GridView (RadGrid) und Benutzerdefinierte Paging

Ok, so bin ich versucht, meine benutzerdefinierte paging geht auf die Telerik RadGrid (ähnlich der asp:Gridview), aber ich bin immer noch gegen eine Wand. (der erste Teil meiner Frage wurde beantwortet hier)

Also implementierte ich den Vorschlag. Ich verwenden Sie die folgende Gespeicherte Prozedur

ALTER PROCEDURE [dbo].[bt_HealthMonitor_GetAll]
(
    @StartRowIndex      int,
    @MaximumRows        int
)

AS
SET NOCOUNT ON

Select
RowNum,
[ID],
[errEx],
[errURL],
[errSource],
[errUser],
[errMessage],
[errIP],
[errBrowser],
[errOS],
[errStack],
[errDate],
[errNotes]
From
(
Select
    [ID],
    [errEx],
    [errURL],
    [errSource],
    [errUser],
    [errMessage],
    [errIP],
    [errBrowser],
    [errOS],
    [errStack],
    [errDate],
    [errNotes],
    Row_Number() Over(Order By [ID]) As RowNum
    From dbo.[bt_HealthMonitor] t
) 
As DerivedTableName
Where RowNum Between @StartRowIndex And (@StartRowIndex + @MaximumRows)

Order By [ID] Desc

Dann eine andere gespeicherte Prozedur, um die Anzahl der Datensätze

ALTER PROCEDURE [dbo].[bt_HealthMonitor_GetRecordCount]

AS
SET NOCOUNT ON

return (Select Count(ID) As TotalRecords From bt_HealthMonitor)

Und ich bin mit LINQ to SQL zu binden, um meine RadGrid

Protected Sub RadGrid1_NeedDataSource(ByVal source As Object, ByVal e As Telerik.Web.UI.GridNeedDataSourceEventArgs)

    Dim startRowIndex As Integer = (RadGrid1.CurrentPageIndex * RadGrid1.PageSize)
    Dim maximumRows As Integer = RadGrid1.PageSize

    Dim HealthMonitorDC As New DAL.HealthMonitorDataContext

    Dim r = HealthMonitorDC.bt_HealthMonitor_GetAll(startRowIndex, maximumRows)
    RadGrid1.DataSource = r
End Sub

Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
    Dim HealthMonitorDC As New DAL.HealthMonitorDataContext
    Dim count = HealthMonitorDC.bt_HealthMonitor_GetRecordCount()
    RadGrid1.MasterTableView.VirtualItemCount = count.ReturnValue
    RadGrid1.VirtualItemCount = count.ReturnValue
End Sub

Aber das problem, das ich erlebe, ist, dass das raster nur packt die ersten 10 Zeilen (wie erwartet), aber ich brauche, um es zu bekommen, so wird es erkennen, dass es 200 Zeilen in der Tabelle, so dass die paging-icons zeigen.

Wenn ich mit der dropdownlist anzeigen 50 Datensätze, dann 50, aber noch keine paging-icons, um mich auf die nächsten 50.

Was mache ich falsch?

Nochmals vielen Dank @Martin für die Hilfe. Ich habe meine Ergebnisse auf meinem blog für andere Leute, hoffentlich finden und zu verwenden dotnetblogger.com/post/2010/03/07/...

InformationsquelleAutor Chase Florell | 2010-03-07

Schreibe einen Kommentar