Laden...

GridView-PageCount selbstbestimmen

Letzter Beitrag vor 16 Jahren 4 Posts 891 Views
GridView-PageCount selbstbestimmen

Hey community,

also an meinen ganzen beiträgen der letzten tage sieht man deutlich das ich ein arges Problem mit dem GridView habe und es mir daher tierisch auf die Nerven geht.

Naja genug des Meckerns 😉!

Derzeitig bin ich dabei meinerm GridView n-Seiten hinzuzufügen. Ich benötige zum Beispiel die Anzeige von 15 Seiten lade davon aber nur die 10. und deren Einträge. Ich will aber Anzeigen das es 15 Seiten gibt und diese zur Verfügung stehen. Paging und Sorting habe ich schon komplett eiegens behandelt da es mit meinem Objectkonstrukt so gar nicht funktioniert wie es sich Microsoft vorgestellt hat.

Um nun aber nicht immer eine Liste von (meist) über 1000 Einträgen zu laden, lade ich einfach 10 und zeige diese an. Will aber eben zeigen das noch mehr Einträge vorhanden sind.

Hoffe ihr habt da einen Ansatz wie ich dies dem Grid klarmachen kann das es doch "bitte" anzeigt das es 15 Seiten gibt.

Habe es bereits über
GridView.PageCount und über gridView.pagerSettings.PageButtonCount
ausprobiert, leider ohne Ergebnis.

greetz
Maurice

Die drei Tugenden eines Programmierers:
Faulheit, Ungeduld und Hochmut!

Salue mbk_chili

Also das GridView Control ist ganz nett, vorallem in der Gegenüberstellung zum DataGrid 🙂

Ich bin nicht sicher ob ich dich verstehe.
Sowas?

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011

Salue Peter,

naja leider nicht direkt.

Folgendes Szenario: Ich habe in einer Datenbank 1000 Einträge, nun zeige ich aber immer nur 10 in dem GridView an. Also hole ich mir diese 10 Einträge aus der DB und lasse den Rest weg. Dann zähle ich noch wieviele Zeilen mein Ergebnis komplett erbracht hätte.

Nun will ich diese 10 Einträge anzeigen und ein Paging für alle restlichen ermöglichen, also dem Nutzer so deutlich machen das es eigentlich (böses Wort) mehr als 10 Einträge sind. Wenn der nutzer dann mittels paging auf die nächste oder eher beliebige Seite in dem gridView wechselt dann werden wieder nur genau diese 10 Einträge aus der DB geholt die angezeigt werden.

Da alles "leider" zu dynamisch ist und ich mit nHibernate arbeite muss (denke ich) ich alle Zeilen holen. Was unter umständen bis zu einer Million sein kann. Was ich aber nicht bestimmen kann den das hängt von dem Kunden ab wie er seine Oberfläche konfiguriert hat und somit wie tief und wie genau seine Ergebnisse werden.

Ich habe zwar mittlerweile eine Lösung, aber gefallen tut sie mir net wirklich:
Ich hole mir die 10 Einträge, speicher mir für welche Seite es ist und packe auf die restlichen Seiten die angezeigt werden können leere Objekte, was natürlich auch wieder dauern kann 1 Mio leere Objekte zu erzeugen, da es ja auch die gleichen sein müssen so dass die Properties zugeordnet werden können. Was dann aber worse-case ist mit der Mio.

greetz Maurice

Die drei Tugenden eines Programmierers:
Faulheit, Ungeduld und Hochmut!

Hallo Maurice

Okay, das ist eine interessante Anforderung 🙂
Hmm, ich denke eine andere Lösung als deine aktuelle gibts so nicht und die hätt ich dir auch vorgeschlagen.

Ansonsten musst du das Gridview umschreiben / erweitern / neu implementieren, IMO.

Gruss Peter

--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011