在DataBinding之后未选中数据源中的Selected ListItem

时间:2009-08-18 23:00:18

标签: vb.net drop-down-menu

我正在选择一个ListItem,因为我将它添加到ListItemCollection中。然后我使用ListItemCollection作为DropDownlist的数据源,但是在数据绑定之后没有选择Selected List Item。以下是代码示例:

ListItemCollection items = new ListItemCollection();
ListItem item;
item = new ListItem("Option 1", "1");
items.Add(item);
item = new ListItem("Option 2", "2");
item.Selected = true;
items.Add(item);
ddl1.DataSource = items;
ddl1.DataBind();

我正在尝试让它工作,所以我只能返回一个项目列表,而不是项目列表和所选值。有没有办法让DropDownList从ListItemCollection(或任何其他类型的集合)中选择所选的ListItem?

3 个答案:

答案 0 :(得分:1)

嗯......这似乎是一种奇怪的方法来完成这个,你应该能够做这些事情:

ddl1.Items.Clear();
foreach(ListItem item in items)
{
   ddl1.Items.Add(item);
}

哪个应解决您的选择问题...

答案 1 :(得分:0)

我不认为您可以在绑定到下拉列表之前设置所选值。我认为你必须在绑定之后再这样做。

答案 2 :(得分:0)

只需设置DropDownList的SelectedValue属性:

ddl1.SelectedValue = "Option 2";

这里我使用的是文字字符串,但最好设置item.Text值。您可以在DataBind()之前或之后使用它,它可以以任何方式工作。