Avatar billede larsbop Nybegynder
27. oktober 2003 - 13:16 Der er 10 kommentarer og
1 løsning

Opdater listbox uden brug af Page_Load

Hej, jeg har et lille problem med at opdatere tekst i en form.

Jeg har en tråd der arbejder i baggrunden, og har brug for at give feedback på trådens status løbende. Vha. en eventhandler kan jeg kalde en funktion i min codebehind fil hver gang tråden når et skridt videre. Tanken var at tilføje nye items i en listbox løbende mens tråden arbejder (uden at skulle reloade siden !!!).

Mit problem er at når jeg tilføjer items i min listbox bliver de ikke vist da klienten jo ikke reloader siden blot fordi jeg kalder en funktion i min codebehind. Hvis nogen har et link eller en forklaring til hvordan jeg kan gøre dette ville det være kanon :)

Det behøves ikke nødvendigvis at være en listbox, et label der skifter tekst dynamisk eller lign. kan sagtens bruges...
Avatar billede clausjul Nybegynder
27. oktober 2003 - 13:19 #1
Har du prøvet

if (!IsPostBack) {

// Her køres Page_Load, hvis der ikke er noget dopostback

}
Avatar billede don_nigger Nybegynder
27. oktober 2003 - 13:19 #2
Det kan ikke lade sig gøre

KEEP CODING!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Avatar billede larsbop Nybegynder
27. oktober 2003 - 13:23 #3
Jeg kan ikke bruge (!IsPostBack) - mit problem er netop at det ikke skal gøres i Page_Load, klienten trigger jo ikke opdateringen - det gør tråden...

Jo - det må kunne lade sig gøre... Det svarer til en news feeder på en side, hvor der løber tekst hen over siden.
Avatar billede lauge Nybegynder
27. oktober 2003 - 13:26 #4
du kan lave en Iframe som står og reloader hele tiden, og når der så er ændreinger, opdatere din listbox med javascript. Så kan du bare sætte height og width = 0 således man ikke kan se Iframen.
Avatar billede burningice Nybegynder
27. oktober 2003 - 13:38 #5
larsbop>> nej.. det kan altså ikke lade sig gøre, sådan som du beskriver at du vil have det gjort. http er en stateless protocol, og fungerer ved at klienten sender en request til en server.. serveren behandler requestet, genererer html'en og først når HELE SIDEN er genereret sender den response tilbage til klienten.

Det du efterlyser er at serveren kan sende response tilbage efterhånden som det bliver genereret... det er noget snask !!

Istedet skulle du tage og kigge på enten et applet, som kan holde en konstant forbindelse mellem klient og server, eller, som lauge siger, en iframe som står og releader sig selv.
Avatar billede larsbop Nybegynder
27. oktober 2003 - 13:47 #6
Jeps, jeg kigger på IFrame nu :)

Jeg ved godt at HTTP er stateless, og det er netop det er problemet.. Men jeg siger blot at det må kunne lade sig gøre løbende at vise tekst på skærmen, jeg har set flere sider hvor det lod sig gøre f.eks. en countdown timer eller et ur osv...
Avatar billede lauge Nybegynder
27. oktober 2003 - 13:51 #7
du kan også gøre det i flash.
Jeg ved ikke hvordan, men du kan se på dr.dk hvor de bruger flash, som hele tiden bliver opdateret fra serveren. Hvis du lytter til den kanal der hedder ghetto, så vil du se at der hele tiden bliver opdateren med hvad der spiller næste gang m.v.
Avatar billede burningice Nybegynder
27. oktober 2003 - 14:04 #8
larsbop>> kan du sige javascript ;)
Avatar billede larsbop Nybegynder
27. oktober 2003 - 15:47 #9
Jeg fik det til at virke med IFrames, tak for jeres svar.

Hvordan giver jeg de 60 point til "lauge" ???
Avatar billede lauge Nybegynder
27. oktober 2003 - 19:20 #10
ha ha ha, der er penge i kassen :-)
Avatar billede lauge Nybegynder
27. oktober 2003 - 19:20 #11
nu har jeg smidt et svar - det godkender du bare.
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