Custom Paging im DataGrid || asp.net

zioProduct

Erfahrenes Mitglied
Und noch einmal Hi aspler :)

Also folgendes, ich habe mein Dg auf 5 Einträge pro Seite verringert, und wenns mehr sind, soll er ne neue Page anlegen. Das funktioniert auch alles soweit, die Frage ist nur, wie kann ich die Daten > 5, auf der zweiten Page anzeigen? Momentan bildet er mir einfach eine Kopie von Seite 1 ab, ist auch klar, ich mach ja nix, weil ich nicht weis wie :(

Wäre für ne Hilfe Dankbar ;)
Code:
if(connection.State.ToString() !="Open")
     connection.Open();
try
{
	ds = new DataSet() ;
	string sqlAuftragAbfrage = "SELECT * FROM view_XXX WHERE UserID = '"+txtPersNr.Text+"' AND Datum = '"+lblDate.Text+"'";
	string sqlCountAuftrag = "SELECT Count(*) FROM view_XXX WHERE UserID = '"+txtPersNr.Text+"' AND Datum = '"+lblDate.Text+"'";
	SqlCommand sqlCount = new SqlCommand(sqlCountAuftrag,connection);
	int counter = (int) sqlCount.ExecuteScalar();

	dgTimes.PageSize = 5;
	dgTimes.VirtualItemCount = counter;

	sqla = new SqlDataAdapter(sqlAuftragAbfrage,connection) ;
	sqla.Fill(ds);
	for(int i = 0; i < ds.Tables[0].Columns.Count;i++)
	{
		BoundColumn objbc = new BoundColumn();
		objbc.DataField = ds.Tables[0].Columns[i].ColumnName;
		objbc.HeaderText = ds.Tables[0].Columns[i].ColumnName;
				
		if( i >=8)
		objbc.Visible =false;

		dgTimes.Columns.Add(objbc);
		dgTimes.DataSource = ds.Tables[0];
		dgTimes.DataBind() ;
	}
	sqla = null;
}
catch(Exception ex)
{lblFehler.Text = ex.Message;}
finally
{connection.Close();}
Hier meine Methode zum füllen des DataGrids. In meinem DataGrid PageIndexChanged, ruf ich diese Methode auf, und darum muss ich da irgend wo, was reinflicken, also mein ds, aufteilen, dass die Seiten auch korrekt gefüllt werden.

Donke donke donke

ziop
 

zioProduct

Erfahrenes Mitglied
Ok, done :p
Einfach fill mit folgenden kriterien erweitern:
Code:
sqla.Fill(ds,dgTimes.CurrentPageIndex*dgTimes.PageSize,((dgTimes.CurrentPageIndex+1)*dgTimes.PageSize),"view_XXX");

Man bin ich gut :suspekt:
 

Neue Beiträge