我有一个下拉列表,其中包含后面代码中的数据.DataTextField使用以下代码设置该属性:
ddlItems.DataTextField = "ItemName";
Run Code Online (Sandbox Code Playgroud)
我想显示两个数据属性DataTextField.我尝试使用以下代码,但它不起作用.我已经在网上研究过但无法找到如何使用两个数据属性.
ddlItems.DataTextField = "ItemName" + "ItemDescription";
Run Code Online (Sandbox Code Playgroud)
我需要用什么代码来执行此操作?
小智 23
您可以使用LinqToSql创建一个包含displayfield的新数据源,该显示字段按您希望的方式进行格式化,例如:
var datasource = from x in products
select new {
x.Id,
x.Code,
x.Description,
DisplayField = String.Format("{0} ({1})", x.Code, x.Description)
};
comboBox.DataSource = datasource;
comboBox.DataValueField = "Id";
comboBox.DataTextField = "DisplayField";
comboBox.DataBind();
Run Code Online (Sandbox Code Playgroud)
您可以使用ddlItems的Formatting事件,它允许您设置逻辑以将某个项目转换为字符串,或者如果在您的程序中使用它有任何意义,请使用像RepresentingString这样的属性返回Name + Desc,以及绑定到该属性.
类似的问题,更多的答案和代码示例: 格式DropDownList.TextValue