Asp.Net - IList中的DropDownList.DataValueField

时间:2010-05-13 15:21:35

标签: c# asp.net drop-down-menu

在Asp.Net 3.5中,DataValueField可能是IList吗?

myddl.DataValueField = "ListOfId"

其中ListOfId作为我的DataSource中的IList

2 个答案:

答案 0 :(得分:2)

在DataBind()DropDownList之前,必须将要分配的字段的字符串名称传递给DataTextField和DataValueField。

示例:

protected void populateDropDownList(){
   IList<MyObject> myObjectList = getMyObjectList();

   DropDownList1.DataSource = myObjectList;
   DropDownList1.DataTextField = "FullName"; // exact name of field in class
   DropDownList.DataValueField = "id";

   DropDownList.DataBind();

}

答案 1 :(得分:0)

这是不可能的。 DataValueField必须是一个字符串,即绑定数据源的公共属性的名称:

http://msdn.microsoft.com/en-en/library/system.web.ui.webcontrols.listcontrol.datavaluefield(VS.90).aspx

如果你有一个简单的字符串列表,你可以将它绑定到下拉列表:

C# - Dumping a list to a dropdownlist