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 ...