在 ASP.net (C#) 中对 DropDownList 使用相同的 ListItem 对象时,它会显示最后一项文本和值。代码写在下面,
protected void Button1_Click(object sender, EventArgs e)
{
ListItem itm = new ListItem();
itm.Text = "AAA";
itm.Value = "AAA";
DropDownList1.Items.Add(itm);
itm.Text = "BBB";
itm.Value = "BBB";
DropDownList1.Items.Add(itm);
itm.Text = "CCC";
itm.Value = "CCC";
DropDownList1.Items.Add(itm);
itm.Text = "DDD";
itm.Value = "DDD";
DropDownList1.Items.Add(itm);
}
DropDownList 显示 4 个项目,但所有项目的文本都为“DDD”。但是如果我添加
itm = new listItem();
在分配新的文本和值之前,它会根据需要显示。AAA、BBB、CCC、DDD。
是什么原因?