只是徘徊是可以在DataValueField c#中放置多个值。净?
示例:
我有以下代码:
<asp:DropDownList ID="ixTeam" CssClass="ixTeam" runat="server" DataSourceID="dsixTeam"
DataValueField="TeamID" DataTextField="TeamName" AppendDataBoundItems="true">
我可以将2个值(TeamID +“|”+ TeamTypeID)放入DataValueField吗?
答案 0 :(得分:13)
你不能在DataValueField
中组合两个字段,但你可以尝试几件事。
SQL查询:
Select (TeamID +"|"+ TeamTypeID) as CombinedTeam, .....`
然后设置
DataFieldValue = "CombinedTeam"
或者
例如:
var query = from t in yourDataSource
select new
{
CombinedTeam = t.TeamID + "|" + t.TeamTypeID,
}
然后指定下拉到LINQ查询的数据源,并指定DataFieldValue
yourDropDownList.DataSource = query;
yourDropDownList.DataFieldValue = "CombinedTeam";
答案 1 :(得分:4)
简短的回答是你不能。
相反,在数据集中创建一个计算列,其表达式为TeamID + '|' + TeamTypeID
(当您获取将格式化的显示列添加到选择查询的数据时,也可以执行此操作,假设您使用的是数据库) ,然后在该列上绑定。
答案 2 :(得分:3)
是的,可以做到。从SQL Server检索时格式化数据如下:
Select TeamID + ' | ' + TeamTypeID CombinedColumn
现在设置DataValueField=CombinedColumn
答案 3 :(得分:0)
SELECT CAST(TeamID AS VARCHAR(100)) + ' | ' + CAST(TeamTypeID AS VARCHAR(100)) as CombinedColumn, TeamID ,TeamTypeID FROM [tblName]
这对我有用,其余的正在转换为 int 错误。