ASP.NET GridView将两个字段绑定到一列
问题描述:
我在我的Web应用程序中有ASP.NET GridView,并希望将两个字段绑定到一列并使用字符串格式。我在下面提供示例,是否可以实现到GridView?ASP.NET GridView将两个字段绑定到一列
我有两个数据字段Name
和DefaultParam
,并希望将这些字段显示到一个GridView列中。
喜欢这个
Name=DefaultParam
如果DefaultParam值是空的,我想只显示Name
值,不包括=
我用直放站和下面的代码来实现这一点,但现在决定搬家数据显示到GridView
<%#Eval("Name")%>
<%# (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):"" %>
答
您可以使用TemplateField并将逻辑放在那里:
<asp:TemplateField HeaderText="Header">
<ItemTemplate>
<%#Eval("Name") + (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):""%>
</ItemTemplate>
</asp:TemplateField>
另一种选择是使用属性在对象上做逻辑为你在幕后,只是把它作为一个BoundField,但你没有提什么对象的绑定。
答
您可以简单地在代码后面编写<%# ... %>
之间的服务器端代码。只是把它放在''(在单引号之间)。
<asp:Lable id="lblxx" runat="server"
Text='<%# Eval("Name") + (!string.IsNullOrEmpty(Convert.ToString(Eval("DefaultParam")))) ? "= " + Eval("DefaultParam"):"" %>' />
按照此tutorial链接,使用模板字段如何自定义格式根据数据就知道了。