ASP.NET GridView绑定两个字段到一列

5

我在我的Web应用程序中有一个ASP.NET GridView,希望将两个字段绑定到一列并使用字符串格式化。 我提供以下示例,是否可以在GridView中实现?

我有两个数据字段NameDefaultParam,想要将这些字段显示在一个GridView列中。

就像这样:

Name=DefaultParam

如果DefaultParam值为空,我想仅显示“Name”值,而不包括“=”号。
我曾使用Repeater和下面的代码来实现此目标,但现在决定将数据显示移至GridView。
<%#Eval("Name")%>
<%# (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):"" %>
2个回答

4
您可以使用模板字段并在其中放置您的逻辑代码:
<asp:TemplateField HeaderText="Header">
<ItemTemplate>
<%#Eval("Name") + (!string.IsNullOrEmpty(Eval("DefaultParam").ToString())) ? "= " + Eval("DefaultParam"):""%>
</ItemTemplate>
</asp:TemplateField>

另一种选择是在您的对象上使用属性来处理逻辑,并将其作为绑定字段使用,但您没有提及绑定的对象是什么。


0

你可以像在代码后面写一样,在<%# ... %>之间编写简单的服务器端代码。只需将其放在''(单引号之间)即可。

<asp:Lable id="lblxx" runat="server" 
Text='<%# Eval("Name") + (!string.IsNullOrEmpty(Convert.ToString(Eval("DefaultParam")))) ? "= " + Eval("DefaultParam"):"" %>' />

点击tutorial链接,了解如何使用模板字段根据数据进行自定义格式化。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接