Avatar billede henriklaursen Nybegynder
02. september 2005 - 13:58 Der er 8 kommentarer

opdater tabel efter page_load

hej.

Jeg har et problem, som sikkert mange andre også er løbet ind i. - men jeg har ikke lige kunnet finde nogle eksempler.

jeg har en et site, hvor man kan indtaste nogle data.
når man trykker på gemdata, bliver de gemt i en database.

på siden har jeg lavet en tabel, hvor de enkelte data skal vises.
problemet er så, at tabellen ikke bliver opdateret med de nye data som netop er blevet gemt.

som jeg ser det, skyldes det at page_load bliver kørt før at f.eks. "button1_onclick" funktionen bliver kørt.

men er der er en måde man kan omgå'es det her på.
(også uden at lave et gridview hvor man så laver en databind();)

håber nogle kan hjælpe.
Avatar billede jokkejensen Novice
02. september 2005 - 14:47 #1
du har ikke din kode der binder til tabellen indkapslet i if(!ispostback) ?
Avatar billede lifo Nybegynder
02. september 2005 - 17:40 #2
problemet ligger nok i rækkefølgen af de events der bliver fyret af(page life cycle)
om du har din kode som fylder dit dataset i din post back så bliver dit datagrid fylt ud før at de nye data bliver sat ind
da page_load kommer før postback events og chached events

en mulighed er at flytte din kode som fylder dit datagrid til pre_render eventet
som er et af de sidste der bliver kaldt
Avatar billede lifo Nybegynder
02. september 2005 - 17:43 #3
.. i din post back så ...
skal være ....i page_load så ....
Avatar billede lifo Nybegynder
02. september 2005 - 17:44 #4
damm klokken er kun 17:43 og jeg har allerede fået for mange øl
Avatar billede snepnet Nybegynder
03. september 2005 - 14:06 #5
du behøver ikke lave en gridview - mønsteret (anbefalet) er :

//i page_load
if(!IsPostBack)
{
  FillTable(); // den kode du bruger til at putte indhold i tabellen
}

// i enhver eventhandler der medfører ændringer i datagrundlaget:
DoHandlerStuff(); // hvad du nu gør i den aktuelle handler
FillTable();

Altså - fyld tabellen første gang brugeren ser siden, og hver gang brugeren gør noget der ændrer dine data.

mvh
Avatar billede henriklaursen Nybegynder
05. september 2005 - 08:12 #6
lifo
hvordan får jeg skrevet det i pre_render eventen ??
(er måske lidt ny i denne verden, - så måske et let spørgsmål)
Avatar billede henriklaursen Nybegynder
05. september 2005 - 08:26 #7
nevermind - fandt selv ud af det :-) - LIFO - smider du et svar
Avatar billede snepnet Nybegynder
05. september 2005 - 14:42 #8
hvis du databinder i pre_render vil du får kørt din databinding hver gang, hvilket igen betyder at du ikke vil kunne arbejde på dine data i forbindelse med normal eventhandling med mindre du baserer det på at dit kontrolhierarki bliver retableret udfra viewstate.
og .... hvis de alligevel bliver retableret udfra viewstate - er der ingen grund til at du selv gør det efterfølgende i pre_render.
jeg vil anbefale dig at benytte mønsteret fra 03/09-2005 14:06:01 istedet, med mindre dine data behandles af underliggende klasser, som ikke giver dig mulighed for at finde ud af om data er ændret, og genbinding derfor er nødvendig.
mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester