Avatar billede karsten_larsen Praktikant
19. august 2007 - 13:13 Der er 8 kommentarer og
1 løsning

Få event afviklet før Page_load i UserControl

Min UserControl er opbygget som følgende:

Protected Sub Page_Load
If page.ispostback = True
' her afvikles status af ChechBoxe 
cbDemoDatabind
End if
End Sub

Protected Sub cbDemoDatabind ()
' hentes data som bindes til ChechBoxe
End Sub

og en button som updater ChechBoxe

Protected sub btnUpdate
' opdaterer db ud fra ændringer i Chechboxe
end sub

Problem:
Når btnUpdate afvikles kører siden først page_load er "genskaber" værdierne for ChechBox, hvorved der ikke sker en ændring i databasen ud fra de data.

Hvordan håndteres det at event på botton kan køres før page_load?

??:-) karsten_larsen
Avatar billede nielle Nybegynder
19. august 2007 - 13:43 #1
Dette er rækkefølgen som sidens eventhandlere kaldes i 2.0:

PreInit
Init
InitComplete
PreLoad
Load
LoadComplete
PreRender
PreRenderComplete
Unload

Umiddelbart lyder Page_PreLoad som et bud på hvor du kan ligge din database kode.
Avatar billede neoman Novice
19. august 2007 - 13:48 #2
Det kan du ikke. Pageload kører altid før event handlers, men er der ikke noget galt i logikken ?

Det er ikke klart om du har dynamiske checkboxe eller ej, men hvis du har, så skal du kun genetablere deres "eksistens" men ej tilstand - den kommer automatisk fra viewstate.

Lige nu så sætter du værdier i din pageload hver gang, så det er klart at der ikke sker nogen fornyelse i DB'en, da du overskriver eventuelle ændringer som brugeren har lavet (og som sidder i viewstate)

Prøv dette:

If Not Page.IsPostBack Then
' skab checkboxe , og giv dem værdi fra DB (=databind)
Else
' genskab checkboxe, men uden at tilskrive dem en værdi (uden databind)
End ID
Avatar billede neoman Novice
19. august 2007 - 13:51 #3
Og i din click handler:
Protected sub btnUpdate
' opdaterer db ud fra ændringer i Chechboxe
' databind !
end sub
Avatar billede karsten_larsen Praktikant
19. august 2007 - 14:19 #4
Prøver det lige, karsten_larsen
Avatar billede karsten_larsen Praktikant
19. august 2007 - 14:36 #5
neomann

If not page.ispostback gjorde forskellen !

Troede ellers at if page.ispostback = false ville gøre det samme, men det gjorde det ikke!

Vil du lave et svar og tak for hjælpen

:-) karsten_larsen
Avatar billede neoman Novice
19. august 2007 - 15:45 #6
hvis det var det eneste så behold dine points - tage pts for tyrkfejl er da for meget :) godt det virkede
Avatar billede karsten_larsen Praktikant
26. august 2007 - 10:09 #7
øhh - det var ikke en tryk fejl, dit svar hjalp, forstod det heller ikke helt selv at der kunne være en forskel.

Så vil du lave et svar?

:-) karsten_larsen
Avatar billede neoman Novice
26. august 2007 - 11:53 #8
Jeg bøjer mig :)
Avatar billede karsten_larsen Praktikant
26. august 2007 - 12:31 #9
okay :)
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