Originariamente inviato da itised
Il problema è che mi si verifica anche in un controllo dropdownlist. Ho delle istruzioni eseguite nell'evento valuechanged che prendono in input il selectedvalue del controllo, il quale però è sempre il primo della lista indipendentemente da cosa ho selezionato...
Forse non ho capito bene il problema ma a me le ddl funzionano sempre alla perfezione posto un piccolo esempio appena provato
code.aspx
codice:
<form id="form1" runat="server">
<div>
<asp:DropDownList ID="ddlItem" runat="server" AutoPostBack="true"
onselectedindexchanged="ddlItem_SelectedIndexChanged">
</asp:DropDownList>
Selected Valure :<asp:Label ID="lblSelectedValue" runat="server" Text=""></asp:Label>
</div>
</form>
code.aspx.cs
codice:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ddlItem.DataSource = new List<ListItem> {
new ListItem("primo"),
new ListItem("secondo"),
new ListItem("terzo") };
ddlItem.DataBind();
}
}
protected void ddlItem_SelectedIndexChanged(object sender, EventArgs e)
{
lblSelectedValue.Text = ddlItem.SelectedValue;
}
}
se lo provi ad eseguire vedrai che il selectedValue contine l'ultimo valore selezionato a meno che tu nn abbia disattivato il viewstate ho fatto qualche altro tipo di errore ...