20. januar 2004 - 14:30Der er
11 kommentarer og 1 løsning
Behold valg efter sortering
Hej.
Jeg har et datagrid hvor jeg har en templatecolumn med chkbokse i. Mit problem er at hvis man vælger/fravælger nogle forskellige checkboxe, og derefter sorterer, så er valgene i checkboksene væk. Det sker fordi, jeg henter data ud af db'en igen, med en SORT på sql, der svarer til den kolonne der skal sorteres. Er der nogle der har en smart ide til hvordan jeg gemmer valgene, således jeg kan påføre dem igen, når jeg har hentet den sorterede liste frem?
Ikke helt sikker på om det virker. Hvis det ikke virker, bliver du nødt til at løbe din kontrol igennem ved resort og gennem en liste over de element, som er "checked". Når du efterfølgende rebinder, løber du igen listen igennem og checker.
mufoxe-> Det kan godt være jeg spørger lidt dumt.. Men vil jeg ikke komme i problemer, når jeg forventer at der kommer en datatable fra min datagrid, og så sætter DataView ind... Det kan godt være jeg er helt off, men den myDataTable du skriver, må være den datasource som er i datagrid før sortering, ikke?
mufoxe->Jeg får en null exception når jeg prøver at tilgå datasource på datagrid... Pga postback, og så er det oprindelige objekt jo væk... thor-> Kræver dit stadig ikke at jeg ved postback efter sort, hiver data ud fra db, og på den måde skal binde forfra. Vil min information om checkboksene så ikke stadig være tabt?
Thor-> Det kunne selvfølgelig lade sig gøre... Jeg forsøger lige nogle af jeres løsninger.. Vil det at man gemmer et "stort" dataset ikke medføre en del ekstra trafik.. Det ser jeg lige på.. Det er nok ikke så voldsomt alligevel..
Det virker ikke helt efter planen.. Mine checkboxes er jo ikke med i datasettet sådan set.. Jeg prøver lige forfra...
Jeg er vel nødt til at gemme noget, i det jeg trykker på overskriften i en kolonne, og kalder sortfunktionen, så skal jeg vel være nødt til at gemme tilstanden på alle checkboxene... Er jeg ikke... Det vil sige hvis jeg laver en dummy kolonne til at starte med "chk", og så i sort funktionen, løber alle celler igennem og knytter hver enkel chk's state til den tilsvarende kolonne i ds, og så derefter viewstater den, og sorterer...
Ville det virke (kan man overhovedet følge det?!?)
Mufoxe: Dit 2. svar virker. Læg lige et svar igen.. Havde ikke lige set sidebemærkningen, men det er sådan jeg har lavet det. Jeg opretter en hasttable, og linker firmaid'et til checkboxens checked. Denne hashtable gemmer jeg så i viewstate ved sortering, og henter den ind efter ny sql forespørgsel, og sætter hver checkbox i den linie der tilhører det firmaid til det i ht'en. Og så selvfølgelig sletter den fra viewstate når jeg har brugt den. virker fint, og ok hurtigt. Så smid et svar inden et par dage mufoxe.. Det minder vist en del om det du skrev, så du skal ha dine point. :-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.