int og dropdownlist

Tags:    .net

Jeg har en DropDownList der indeholder månederne:
<asp:dropdownlist id="start_month" runat="server">
<asp:listitem1>Januar</asp:listitem>
<asp:listitem>Februar</asp:listitem>
<asp:listitem>Marts</asp:listitem>
<asp:listitem>April</asp:listitem>
<asp:listitem>Maj</asp:listitem>
<asp:listitem>Juni</asp:listitem>
<asp:listitem>Juli</asp:listitem>
<asp:listitem>August</asp:listitem>
<asp:listitem>September</asp:listitem>
<asp:listitem>Oktober</asp:listitem>
<asp:listitem>November</asp:listitem>
<asp:listitem>December</asp:listitem>
</asp:dropdownlist>

jeg har så noget kode der skal hente den valgte måned, men som int (et tal)...:
<script language="C#" runat="server">
void set_start_day(Object sender, EventArgs e) {

int start_month2 = start_month.SelectedItem.Text;
}
</script>

men når jeg prøver at køre siden får jeg denne fejl:
CS0029: Typen 'string' kan ikke implicit konverteres til 'int'
i linjen: "int start_month2 = start_month.SelectedItem.Text;"

Hvad går galt og hvordan laver jeg det om til en tal værdi?


Og så lige et ekstra spørgsmål...
Kan jeg lave en form for OnChanged i DropDownList'en?

På forhånd tak



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Den 18-09-04 13:23 skrev Lars Nymand følgende:
-----------------------------------------------------------------------------
Jeg har en DropDownList der indeholder månederne:
<asp:dropdownlist id="start_month" runat="server">
<asp:listitem1>Januar</asp:listitem>
<asp:listitem>Februar</asp:listitem>
<asp:listitem>Marts</asp:listitem>
<asp:listitem>April</asp:listitem>
<asp:listitem>Maj</asp:listitem>
<asp:listitem>Juni</asp:listitem>
<asp:listitem>Juli</asp:listitem>
<asp:listitem>August</asp:listitem>
<asp:listitem>September</asp:listitem>
<asp:listitem>Oktober</asp:listitem>
<asp:listitem>November</asp:listitem>
<asp:listitem>December</asp:listitem>
</asp:dropdownlist>

jeg har så noget kode der skal hente den valgte måned, men som int (et tal)...:
<script language="C#" runat="server">
void set_start_day(Object sender, EventArgs e) {

int start_month2 = start_month.SelectedItem.Text;
}
</script>

men når jeg prøver at køre siden får jeg denne fejl:
CS0029: Typen 'string' kan ikke implicit konverteres til 'int'
i linjen: "int start_month2 = start_month.SelectedItem.Text;"

Hvad går galt og hvordan laver jeg det om til en tal værdi?


Og så lige et ekstra spørgsmål...
Kan jeg lave en form for OnChanged i DropDownList'en?

På forhånd tak
-----------------------------------------------------------------------------

konvertering:
int start_month2 = Convert.ToInt32(start_month.SelectedItem.Text);

Hvis du bruger Visual Studio til at programmere med skal du bare lave en eventhandler i din property editor, ellers skal du skrive det hele selv....

(¯`·._.·[Brian Hvarregaard]·._.·´¯)



når jeg bruger den kode du har givet mig, får jeg denne fejl:
System.FormatException: Inputstrengen var ikke i et korrekt format.

Er der noget der skal ændres i min DropDownListe??
<asp:dropdownlist id="start_month" runat="server">
<asp:listitem value="1">Januar</asp:listitem>
<asp:listitem>Februar</asp:listitem>
<asp:listitem>Marts</asp:listitem>
<asp:listitem>April</asp:listitem>
<asp:listitem>Maj</asp:listitem>
<asp:listitem>Juni</asp:listitem>
<asp:listitem>Juli</asp:listitem>
<asp:listitem>August</asp:listitem>
<asp:listitem>September</asp:listitem>
<asp:listitem>Oktober</asp:listitem>
<asp:listitem>November</asp:listitem>
<asp:listitem>December</asp:listitem>
</asp:dropdownlist>

som f.eks under januar hvor jeg har sat value=1... men det virker ikke.



Nu har jeg fået det til at virke med hensyn til at hente værdien ud af dropdownlisten...

Nu mangler jeg bare hvordan man får den til at gøre noget på onSelectedChanged uden at jeg behøver at bruge en knap.



hehe den har jeg også selv fundet nu :D
Har søgt google helt tynd :P



t