DropDownListe får samme SelectedValue :o(
jeg har 3 stk DropDownLists som er oprettet på min aspx side.dd1, dd2, dd3 med en reference i min aspx.cs side:
protected DropDownList dd1;
protected DropDownList dd2;
protected DropDownList dd3;
Her er et eksempel på koden:
public void GetTemplate(object sender, System.EventArgs e)
{
ReloadDD();
DataTable dt_listfields = this.GetListFields(list_id);
for(int i=0; i<dt_listfields.Rows.Count; i++)
{
int count = i+1;
DropDownList dd_temp = (DropDownList) Page.FindControl("dd_field" + count);
string field_value = dt_listfields.Rows[i]["field_value"].ToString();
dd_temp.SelectedValue = field_value;
Response.Write(dd_temp.SelectedValue);
}
}
private void ReloadDD()
{
DataTable dt_test = this.GetDataTable();
foreach(DataRowView row in dt_test.DefaultView)
{
dd1.Items.Clear():
dd2.Items.Clear():
dd3Items.Clear():
string xxx = row["xxx"].Tostring();
string yyy = row["yyy"].Tostring();
ListItem item = new ListItem(xxx,yyy);
dd1.Items.Add(item);
dd2.Items.Add(item);
dd3.Items.Add(item);
}
}
Når jeg kører GetTemplate metoden får mine tre DropDownLists den samme SelectedValue, og hver gang er det den sidste værdi af dd_temp.SelectedValue. Min Response.Write udskriver i midlertid den rigtige værdi.
Hvis jeg ikke kører metoden ReloadDD() er der ingen problemer!!
Hvorfor får mine DD's samme SelectedValue ?
