【发布时间】:2010-09-08 12:13:24
【问题描述】:
在 GridView ItemTemplate 中使用多个 EVAL 字段的最佳方法是什么?
希望对外观格式以及设置超链接/javascript等有一些控制。
【问题讨论】:
标签: asp.net data-binding gridview eval
在 GridView ItemTemplate 中使用多个 EVAL 字段的最佳方法是什么?
希望对外观格式以及设置超链接/javascript等有一些控制。
【问题讨论】:
标签: asp.net data-binding gridview eval
更清楚的是,IMO:
<%# String.Format("{0} - {1}", Eval("Name1"), Eval("Name2")) %>
【讨论】:
我以前用过这个(不好,我知道):
<%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%>
结果 = '约翰 - 史密斯'
但刚刚发现我也可以将两个(或更多)Eval 放在同一个数据绑定组中:
<%#Eval("Name1") & " - " & Eval("Name2")%>
结果 = '约翰 - 史密斯'
或者
<%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%>
结果 = '名字 - 约翰,姓氏 - 史密斯'
【讨论】:
Eval 和 Bind 都很糟糕。
为什么要通过反射获取属性?您可以像这样直接访问它:
对象在运行时并不为您所知。无论如何,这是我的两分钱。
【讨论】:
我有一个最简单的方法来做同样的事情......
<asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label>
.
<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>
这里两个对象都被转换成字符串连接起来。
【讨论】: