【发布时间】:2019-01-13 04:36:15
【问题描述】:
我想在我的网格视图上绑定数据库中的多个属性,所以我有(名字、中间名和姓氏)并且我想将它们连接到我的网格视图(名称)的一列中
<asp:GridView ID="GV1" runat="server" AutoGenerateEditButton="true"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label
ID="edtName"
runat="server"
Text='<%# Bind("Name") %>'
/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
那么,我该如何绑定它们呢? 我正在使用 Visual Studio 2013,带有 c# 的 asp.net,谢谢。
【问题讨论】:
-
你可以试试
<%# Bind("firstname") %>+' '+<%# Bind("middlename") %>'+' '+'<%# Bind("lastname") %>' -
您可以有多个绑定:
Text='<%# string.Format("{0} {1} {2}", Bind("FirstName"), Bind("MiddleName"), Bind("LastName")) %>'。或者更改您的查询语句以将所有三个连接到单个字符串 (SELECT FirstName + MiddleName + LastName AS Name, ...) -
亲爱的 Tetsuya Yamamoto,第一个方法对我不起作用,异常消息是(CS0103:名称 'Bind' 在当前上下文中不存在)。
-
@ShahadHassan 我发现你不能多次使用
Bind,但你可以对所有这些使用Eval:Text='<%# string.Format("{0} {1} {2}", Eval("FirstName"), Eval("MiddleName"), Eval("LastName")) %>'。 -
是的,现在可以了,谢谢山本先生 :)
标签: c# asp.net sql-server visual-studio