Det är nog svårt att säga vilken ordning webbkontrollers händelser körs. Förmodligen, vild gissning, är det i samma ordning som de är upplagda på sidan.
Alla event som körs genom att användaren orsakar det körs efter alla aspx event har körts, events triggade av användare som tex selectedindexchanged etc.
Aha, hmm, hur gör jag då?
På min aspx sida har jag en kalender + en usercontrol.
På usercontrolen finns en repeater som visar datum i en lång rad och ska börja med det datumet man väljer när man klickar i kalendern.
Repeatern binds via en objectdatasource och det sker väl i Page_Load?
Då binds ju den före användarens klick i kalendern!
Hur kan jag få med datumet från kalendern till repeatern innan repeatern binds?
Repeatern binds via en objectdatasource och det sker väl i Page_Load?
Inte nödvändigtvis, vad du bör göra är att särskilja om du gör en PostBack till sidan, eller om sidan laddas första gången. För det kan ju vara så att hämtningen av din data och binda den till repeater är så prestandatung att det lönar sig att lägga datan i viewstaten och låta repeaterna använda sig av den datan vid en postback, och om du gör det så måste du kontrollera så att du inte hämtar datan igen vid en postback.
Så i din Page_Load kontrollerar du om Page.IsPostback är sant och så fall binder du inte din data till repeatern och så ser du till så att din repeater använder viewstaten.
- M
138 ms totalt · 3 externa anrop · v20260731065814-full.b746b907