/ / DropdownList non sta prendendo correttamente il valore dell'indice selezionato - c #, asp.net, menu a discesa

DropdownList non sta prendendo correttamente il valore dell'indice selezionato - c #, asp.net, menu a discesa

Sto usando un DropDownList controllo e associazione dei dati dal database. Ma dopo aver selezionato un elemento da esso, prende sempre il valore di indice 0.

Ecco un codice:

if (!Page.IsPostBack)
{
PQ.DropDownDepartment(drd_Department);
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.Now);
PQ.DropDownUser(drd_Designation);
PQ.GetUser(drd_User, DesignID);
}

Che cosa sto facendo di sbagliato?

Grazie in anticipo ............

risposte:

1 per risposta № 1

In Page Load Event, associa la DropDownList in questo modo

       if(!IsPostBack)
{
DropDownList.DataSource = dt;                   // dt is the DataTable
DropDownList.DataTextField = "Name";
DropDownList.DataValueField = "ID";
DropDownList.DataBind();
}

Questo è il codice di esempio per risolvere il tuo problema.


0 per risposta № 2

Immagino che il tuo problema sia che stai vincolando / riempiendo il DropDownList ogni volta che la pagina viene caricata.

Per risolvere questo problema, prova a controllare Page.IsPostBack prima di riempirlo / legarlo:

if (!Page.IsPostBack)
{
// bind/fill DropDownList
}