/ / DropdownList nie przyjmuje poprawnie wartości wybranego indeksu - c #, asp.net, drop-down-menu

DropdownList nie bierze poprawnie wartości wybranego indeksu - c #, asp.net, drop-down-menu

Używam DropDownList kontrolować i wiązać dane z bazy danych. Ale po wybraniu z niego elementu zawsze przyjmuje wartość indeksu 0.

Oto kod:

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);
}

Co ja robię źle?

Z góry dziękuję ............

Odpowiedzi:

1 dla odpowiedzi № 1

W Wczytaj ładowanie strony, powiąż listę DropDownList w ten sposób

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

To jest przykładowy kod do rozwiązania problemu.


0 dla odpowiedzi nr 2

Myślę, że twoim problemem jest to, że jesteś wiążący / wypełniasz DropDownList za każdym razem, gdy ładuje się strona.

Aby rozwiązać ten problem, spróbuj sprawdzić Page.IsPostBack przed wypełnieniem / oprawieniem:

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