Ik heb een aantal verschillende methodes geprobeerd. Client sided, Server sided, Postback en Sessies, ik word helemaal gek 
Server sided only:
Bij de page_load wordt de DropDownList opgevuld met gegevens uit een database. Nu wil ik dus 1 voor 1 Items uit de DropDownList selecteren en toevoegen in de LB. Het eerste probleem hierbij was de page_load (en postback?) die elke keer eerst geschiet voordat de handler (van btnAddItem) wordt uitgevoerd. Hierdoor is de ListBox elke keer zijn Items collection kwijt en kan er dus maximaal 1 item in toegevoegd worden.
+Sessies:
Wat heb ik nu gedaan, in de page_load een check of sessie variable bestaat (collection van items), zoja de Listbox eerst vullen met die sessie variabele, dan wordt de btnAddItem uitegevoerd, (of de submit natuurlijk) en dan het item toegevoegd bij de sessie variabele, en door de btnAddItem komt er weer een page load, die ziet de sessie variabele, lijst opvullen, en tada, het werkt. 3 Nadelen:
- elke keer 2 page loads
- sessie variabele (vervalt op gegeven moment ook weer, geen ramp, wel vervelend)
- en de laatste, de ergste, alle andere ingevulde textvakken worden weer leeggegooid, wat ik ook vrij onlogisch vind, maar hier moet ik nog goed naar kijken.
Client sided & server sided:
Dit leek mij (behalve dan de ietswat omslachtige manier van opbouwen) nog de beste manier. Client sided de listbox vullen en deze weer server sided opvragen. De DropDownList (oftewel <select size="1">) wordt dynamisch opgebouwd en toegevoegd aan de pagina, en is client sided. De pagina bevat een javascript om de ListBox die wel server sided is op te vullen met gegevens uit de DropDownList. Gaat snel, want het is client sided. Maar doe ik nu de Submit button, en er komt weer een page load, vind ie de items niet die ik in de ListBox (client sided naar een server sided control dus) heb toegevoegd, wat ik vreemd vind omdat ie die mee zou moeten sturen met een postback, lijkt me.
Ik heb nog van alles geprobeerd, en ben al goed aan het zoeken op google, maar al dit soort dingen moeten toch in .NET automatisch goed geregeld worden? Weet iemand hoe? Zijn er meer mensen die problemen hebben met dit soort dingen? Goed, de enigste werkende manier is bij mij dus met sessie variabele, maar dit wil ik niet.
Server sided only:
Bij de page_load wordt de DropDownList opgevuld met gegevens uit een database. Nu wil ik dus 1 voor 1 Items uit de DropDownList selecteren en toevoegen in de LB. Het eerste probleem hierbij was de page_load (en postback?) die elke keer eerst geschiet voordat de handler (van btnAddItem) wordt uitgevoerd. Hierdoor is de ListBox elke keer zijn Items collection kwijt en kan er dus maximaal 1 item in toegevoegd worden.
+Sessies:
Wat heb ik nu gedaan, in de page_load een check of sessie variable bestaat (collection van items), zoja de Listbox eerst vullen met die sessie variabele, dan wordt de btnAddItem uitegevoerd, (of de submit natuurlijk) en dan het item toegevoegd bij de sessie variabele, en door de btnAddItem komt er weer een page load, die ziet de sessie variabele, lijst opvullen, en tada, het werkt. 3 Nadelen:
- elke keer 2 page loads
- sessie variabele (vervalt op gegeven moment ook weer, geen ramp, wel vervelend)
- en de laatste, de ergste, alle andere ingevulde textvakken worden weer leeggegooid, wat ik ook vrij onlogisch vind, maar hier moet ik nog goed naar kijken.
Client sided & server sided:
Dit leek mij (behalve dan de ietswat omslachtige manier van opbouwen) nog de beste manier. Client sided de listbox vullen en deze weer server sided opvragen. De DropDownList (oftewel <select size="1">) wordt dynamisch opgebouwd en toegevoegd aan de pagina, en is client sided. De pagina bevat een javascript om de ListBox die wel server sided is op te vullen met gegevens uit de DropDownList. Gaat snel, want het is client sided. Maar doe ik nu de Submit button, en er komt weer een page load, vind ie de items niet die ik in de ListBox (client sided naar een server sided control dus) heb toegevoegd, wat ik vreemd vind omdat ie die mee zou moeten sturen met een postback, lijkt me.
Ik heb nog van alles geprobeerd, en ben al goed aan het zoeken op google, maar al dit soort dingen moeten toch in .NET automatisch goed geregeld worden? Weet iemand hoe? Zijn er meer mensen die problemen hebben met dit soort dingen? Goed, de enigste werkende manier is bij mij dus met sessie variabele, maar dit wil ik niet.
Wat een onzin..