07. juni 2005 - 12:59
Der er
20 kommentarer og 1 løsning
DropDownBox værdi (WebForm)
Jeg har på min side en dropdownbox sammen med en række andre felter. Jeg fylder data i den således: DDBTypes.DataSource = types.DefaultView; DDBTypes.DataValueField = "TypeID"; DDBTypes.DataTextField = "TypeDescription"; DDBTypes.SelectedIndex = j; DDBTypes.DataBind(); Men når jeg så får svar tilbage er der ikke noget svar: DDBTypes.SelectedIndex = -1 DDBTypes.SelectedValue = "" Nogen ideer til hvad jeg gør forkert? På forhånd tak
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
Nu er jeg ikke webprog., men kan det have noget med sessionen at gøre - skal det ikke gemmes via sessionen?
Nej ikke i dette tilfælde, jeg skal jo have den valgte værdi i tilfælde af den er ændret.
har du registreret en eventhandler på dropdown boxen ?
altså this.DDBTypes.SelectedIndexChanged +=new EventHandler(DDBTypes_SelectedIndexChanged);
Nej det har jeg ikke - hvordan?
Det er den valgte værdi - mellem 0 og 4
Altså tidligere valgte. For at det er den sidst valgte der er aktiv i listen.
Hvad skal jeg gøre i DDBTypes_SelectedIndexChanged?
07. juni 2005 - 13:28
#10
ok det du skal gøre er i codebehind filen: først lav ny metode private void MyOwnInitialization() { } I den metode som Vs.net designeren laver der hedder "override protected void OnInit(EventArgs e)" placerer du et kald til MyOwnInitialization() lige efter InitializeComponent(); kaldet
07. juni 2005 - 13:29
#11
når du har gjort det tilføjer du denne linie: this.DDBTypes.SelectedIndexChanged +=new EventHandler(DDBTypes_SelectedIndexChanged); i MyOwnInitialization() metoden sådan her: private void MyOwnInitialization() { this.DDBTypes.SelectedIndexChanged +=new EventHandler(DDBTypes_SelectedIndexChanged); }
07. juni 2005 - 13:33
#12
så skal du lave en ny metode: private void DDBTypes_SelectedIndexChanged(object sender, EventArgs e) { } det er i ovenstående metode at du kan fange et selected index. du kan evt vise det i et label eller tekstbox
07. juni 2005 - 13:36
#13
du skal også sikre dig at der en protected dropdownlist kaldet DDBTypes i toppen af code behind filen.
07. juni 2005 - 13:40
#14
Det er gjort, men der er ingen forskel... Altså listen fremstår som den skal på siden, med indhold i både textfield og value... Hvilken forskel skulle ovenstående gøre?
07. juni 2005 - 13:45
#15
Ups så ikke lige den sidste.... Er det virklig nødvendigt - det virker meget omstændigt. Er der nogen grund til at man ikke bare kan bruge selectedValue?
07. juni 2005 - 14:12
#16
du er nødt til at lave et postback på siden ellers serveren ikke registrerer at der er ændret en værdi i dropdownlisten
07. juni 2005 - 14:14
#17
derfor skal der en eventhandler på
07. juni 2005 - 14:44
#18
Nu virker det... Og dog! Hvis jeg opretter værdier og tekster i feltet uden at bruge det fra databasen virker det uden problemer.. Men ikke med data fra databasen. Hvorfor mon ikke?
07. juni 2005 - 14:58
#19
hvis du smider data ned i databasen skal du lave et kald til databasen for at opdaterer din dropdownliste. f.eks. public void opdaterdropdown() { //datahentes DDBTypes.DataSource = types.DefaultView; DDBTypes.DataValueField = "TypeID"; DDBTypes.DataTextField = "TypeDescription"; DDBTypes.SelectedIndex = j; DDBTypes.DataBind(); } altså præcis den samme måde som du binder data til dropdownmenuen i første omgang.
15. juni 2005 - 13:53
#20
lykkedes det ?
11. august 2005 - 18:17
#21
Lukker
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.