将文本连接到asp.net网页(aspx)的绑定表达式的语法是什么。
例如,如果我有一个像这样绑定的超链接:
<asp:HyperLink id="lnkID" NavigateUrl='<%# Bind("Link") %>' Target="_blank"
Text="View" runat="server"/>
如何更改文本以将绑定值与字符串连接?像这样的变化并不完全正确。
Text='<%# Bind("ID") + " View" %>'
既不
Text='<%# String.Concat(Bind("ID"), " View") %>'
答案 0 :(得分:35)
改为使用Eval。
Text='<%# Eval("ID", "{0} View") %>'
如果值不会更新,则Eval也会更好,Bind允许双向数据绑定。
答案 1 :(得分:8)
如果使用模板字段,您还可以在标记的文本部分放置“连接”:
<asp:TemplateField HeaderText="Name" SortExpression="sortName">
<ItemTemplate>
<asp:LinkButton ID="lbName" runat="server" OnClick="lbName_Click" CommandArgument='<%# Eval("ID") %>'>
<%--Enter any text / eval bindind you want between the tags--%>
<%# Eval("Name") %> (<%# Eval("ID") %>)
</asp:LinkButton>
</ItemTemplate>
这导致输出如:
名称(ID)
在模板列内。
答案 2 :(得分:3)
我之前使用String.Format("{0}{1}"
......效果很好。
答案 3 :(得分:1)
您可以使用以下内容:
CommandArgument='<%#String.Format("{0}|{1}", Eval("ArgZero"), Eval("ArgOn"))%>'