Avatar billede websam Nybegynder
04. april 2006 - 14:16 Der er 27 kommentarer og
1 løsning

SelectedValue virker ikke ?

Hejsa,

Jeg fylder en dropdown liste dynamisk fra databasen, hvilket virker fint. Men når jeg så prøver at hente værdien for den valgte i dropdown listen med følgende :

    drp_List.SelectedValue

Så udskrives den som 0 og ikke det der rent faktisk er valgt i listen. Min htlm ser således ud :

<asp:DropDownList ID="drp_Reciever" runat="server" CssClass="textbox" AppendDataBoundItems="True">
    <asp:ListItem Selected="True" Value="0">V&#230;lg modtager</asp:ListItem>
</asp:DropDownList>

Nogen forklaring på dette ?

/Websam
Avatar billede ladyhawke Novice
04. april 2006 - 14:21 #1
hvad står der i din code behind fil? (Har du sat drop down listen til AutoPostBack?)
Avatar billede dr_chaos Nybegynder
04. april 2006 - 14:22 #2
er autoeventwireup=true i toppen af aspx siden
Avatar billede websam Nybegynder
04. april 2006 - 14:23 #3
Kommer her :

If Not IsPostBack Then
    drp_Reciever.DataSource = objBLL.FindUserGroup
    drp_Reciever.DataTextField = "GroupName"
    drp_Reciever.DataValueField = "UserGroup"
    drp_Reciever.DataBind()
End If
Avatar billede websam Nybegynder
04. april 2006 - 14:24 #4
AutoEventWireup="false", altså står den til false
Avatar billede dr_chaos Nybegynder
04. april 2006 - 14:24 #5
prøv med true
Avatar billede websam Nybegynder
04. april 2006 - 14:27 #6
Hvad betyder det "AutoEventWireup" ?
Avatar billede websam Nybegynder
04. april 2006 - 14:29 #7
og det gav ingen forskel at sætte den til true :o(
Avatar billede ladyhawke Novice
04. april 2006 - 14:29 #8
at events bliver koblet til automatisk, ellers skal du selv oprette og håndtere dem
Avatar billede ladyhawke Novice
04. april 2006 - 14:30 #9
hvad med autopostback?
Avatar billede websam Nybegynder
04. april 2006 - 14:34 #10
i toppen af siden ?
Avatar billede dr_chaos Nybegynder
04. april 2006 - 14:35 #11
<asp:DropDownList ID="drp_Reciever" runat="server" CssClass="textbox" AutoPostBack="true" AppendDataBoundItems="True">
    <asp:ListItem Selected="True" Value="0">V&#230;lg modtager</asp:ListItem>
</asp:DropDownList>
Avatar billede dr_chaos Nybegynder
04. april 2006 - 14:35 #12
Betyder at du skal en tur hen over serveren hver eneste gang du vælger et item.

Ligger dropdownlisten i en usercontrol ?
Avatar billede websam Nybegynder
04. april 2006 - 14:38 #13
Jeg skal ikke have autopostback på, da det er valg i en formular med flere felter.
Avatar billede websam Nybegynder
04. april 2006 - 14:38 #14
Ja den ligger i en usercontrol
Avatar billede websam Nybegynder
04. april 2006 - 14:50 #15
Jeg efter hånden ved at være så godt og grundigt træt af de indbyggede asp:form elementer at jeg kræftigt overvejer helt at droppe dem og så bruge alm. html elementer de er da i det mindste til at forholde sig til *GRRRRRR*
Avatar billede innercitydk Nybegynder
04. april 2006 - 14:52 #16
Prøv lige med SelectedItem istedet for value!
Avatar billede innercitydk Nybegynder
04. april 2006 - 14:54 #17
Det virker for mig.. F.eks:

string test = DropDownList1.SelectedItem.ToString();
        Response.Write(test);
Avatar billede dr_chaos Nybegynder
04. april 2006 - 14:56 #18
Den kommer med garanti ind
If Not IsPostBack Then
    drp_Reciever.DataSource = objBLL.FindUserGroup
    drp_Reciever.DataTextField = "GroupName"
    drp_Reciever.DataValueField = "UserGroup"
    drp_Reciever.DataBind()
End If

konstant og derfor er der ikke nogen selectedvalue
Avatar billede innercitydk Nybegynder
04. april 2006 - 14:59 #19
Det virker også med value :) glem hvad jeg har skrevet.. mere kaffe til mig! ;)
Avatar billede websam Nybegynder
04. april 2006 - 15:16 #20
når jeg tager "vis kilde" i min browser får jeg følgende :

<select name="SendEmail1$drp_Reciever" id="SendEmail1_drp_Reciever" class="textbox">
    <option selected="selected" value="0">V&#230;lg modtager</option>
    <option value="3">Forhandler</option>
    <option value="5">Bruger</option>
</select>

hvilket for indikere at jeg har det jeg skal bruge ?!? Altså en value og en item
Avatar billede ladyhawke Novice
04. april 2006 - 15:22 #21
men er det den rigtige drop down du får fat i? (har du initialiseret din user control i din host side?)
Avatar billede dr_chaos Nybegynder
04. april 2006 - 15:23 #22
prøv at lave et breakpoint ud for:
drp_Reciever.DataSource = objBLL.FindUserGroup
Avatar billede websam Nybegynder
04. april 2006 - 15:24 #23
Noget tyder på at ændring af min property fra integer til string gav udfaldet da jeg åbentbart ikke kan sende en value fra en dropdownlist afsted som integer eller for den sags skyld konvertere det til integer ?!?

Det virker i hvert fald nu ;o)
Avatar billede ladyhawke Novice
04. april 2006 - 15:28 #24
det er rigtigt, value er også en streng, selvom det lyder lidt underligt
Avatar billede ladyhawke Novice
04. april 2006 - 15:28 #25
du kan godt konvertere den bagefter hvis du har behov for det
Avatar billede websam Nybegynder
04. april 2006 - 16:03 #26
Det har jeg prøvet og en konvertering medføre bare en fejl at konvertering fra string til integer ikke er tilladt.

Smid et svar, så kan i dele ;o)
Avatar billede ladyhawke Novice
04. april 2006 - 16:29 #27
Du kan godt, du skal bare gøre det rigtigt, du kan ikke bare "cast'e" den til string
Avatar billede websam Nybegynder
04. april 2006 - 16:41 #28
Nej jeg lavede en "Dim s As Integer = drp_List.SelectedValue" så virker det fint
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