我有一个下拉列表
<asp:Label runat="server" Text="Available Items"></asp:Label>
<asp:DropDownList runat="server" ID="ddItems" />
以下是此下拉列表中数据的填充方式。
protected void Page_Load(object sender, EventArgs e)
{
this.ddItems.Items.Add(new ListItem("first item", "1"));
this.ddItems.Items.Add(new ListItem("second item", "2"));
this.ddItems.Items.Add(new ListItem("third item", "3"));
this.ddItems.SelectedIndex = -1;
}
由于SelectedIndex设置为-1,我预计不会选择任何项目,但下拉列表中会显示第一项。
我做错了什么?
答案 0 :(得分:1)
-1不引用列表中的位置,因此您需要添加具有默认文本或空字符串的项目。
Protected void Page_Load(object sender, EventArgs e)
{
// You can set the first list item text to empty string as well
this.ddItems.Items.Add(new ListItem("select an item", ""));
this.ddItems.Items.Add(new ListItem("first item", "1"));
this.ddItems.Items.Add(new ListItem("second item", "2"));
this.ddItems.Items.Add(new ListItem("third item", "3"));
//This is no longer required as the default selected index is 0
this.ddItems.SelectedIndex = 0;
}