我有一个包含3个字段(id,description,typeid)的数组列表,并且我将该arraylist绑定到ASP DropDownList。我将描述字段设置为DataTextField,并在绑定期间将另一个字段“Id”设置为DataValueField。
代码:
Dim b As ArrayList
b = //Assigning ArrayList
Me.drpDwn.DataSource = b
Me.drpDwn.DataTextField = "description"
Me.drpDwn.DataValueField = "id"
Try : Me.drpDwn.DataBind() : Catch ex As Exception : ErrorEmailAlert.SendErrorViaEmail(Server, Session, ex) : End Try
当用户从DropDownList中选择值时,我需要将typeid值设置为变量。
当我选择特定身份证时,有人可以告诉我如何获得“typeid”的价值吗?
编辑:我需要在后面的代码中选择值的typeid值。不是id(数据值)值或描述(数据字段)
答案 0 :(得分:0)
您可以使用typeid连接id,然后将其添加到下拉列表中,如下所示:
class Item
{
public int id;
public string description;
public int typeid;
}
void FillDropDown()
{
List<Item> Items = new List<Item>();
// Fill Items
DropDownList.Items.Clear();
Items.ForEach(I =>
{
DropDownList.Items.Add(new ListItem(I.description, I.id + ";" + I.typeid));
});
}
答案 1 :(得分:0)
在所有绑定情况下的一般想法是,您将DataValueField
与您的集合中的唯一标识符(通常是主数据,如果此数据来自数据库)绑定。一旦用户选择了一个项目并将其发回服务器,您就可以使用主键值来检索整个记录,从而获得任何其他属性的值(在您的情况下为typeid
)。