web-dev-qa-db-fra.com

comment définir la valeur par défaut pour le contrôle de liste déroulante?

J'ai un contrôle de liste déroulante sur ma page Web. J'ai lié le datatable au contrôle dropdownlist comme suit -

lstDepartment.DataTextField = "DepartmentName";
    lstDepartment.DataValueField = "DepartmentID";
    lstDepartment.DataSource = dtDept;
    lstDepartment.DataBind();

dans l'événement de chargement de page, je souhaite définir la valeur par défaut sur le contrôle de liste déroulante de mon autre champ de table.

comment faire ça?

9
Priyanka

Après votre DataBind():

lstDepartment.SelectedIndex = 0;  //first item

or

lstDepartment.SelectedValue = "Yourvalue"

or 
//add error checking, just an example, FindByValue may return null
lstDepartment.Items.FindByValue("Yourvalue").Selected = true;

or
//add error checking, just an example, FindByText may return null
lstDepartment.Items.FindByText("Yourvalue").Selected = true;
26
rick schott

si vous connaissez l'index de l'élément de valeur par défaut, il suffit de

lstDepartment.SelectedIndex = 1;//the second item

ou si vous connaissez la valeur que vous souhaitez définir, il suffit de

lstDepartment.SelectedValue = "the value you want to set";
4
ojlovecd
lstDepartment.DataTextField = "DepartmentName";
lstDepartment.DataValueField = "DepartmentID";
lstDepartment.DataSource = dtDept;
lstDepartment.DataBind();
'Set the initial value:
lstDepartment.SelectedValue = depID;
lstDepartment.Attributes.Remove("InitialValue");
lstDepartment.Attributes.Add("InitialValue", depID);

Et dans votre méthode d'annulation:

lstDepartment.SelectedValue = lstDepartment.Attributes("InitialValue");

Et dans votre méthode de mise à jour:

lstDepartment.Attributes("InitialValue") = lstDepartment.SelectedValue;
0
Sparhawk_

En supposant que le contrôle DropDownList dans l'autre table contienne également DepartmentName et DepartmentID:

lstDepartment.ClearSelection();

foreach (var item in lstDepartment.Items) 
{
  if (item.Value == otherDropDownList.SelectedValue)
  {
    item.Selected = true;
  }
}
0
KBoek