关于HyperLink的NavigateUrl属性的链接地址带参数出错的问题

关于HyperLinkNavigateUrl属性的链接地址带参数出错的问题

问题描述:HyperLink控件的NavigateUrl=’~/PersonalManage/userInfo.aspx?uid=<%#Eval("userID") %>’

运行结果,链接变成:

http://localhost:1107/.../PersonalManage/userInfo.aspx?uid=<%#Eval("userID") %>

也就是说绑定部分没有被解析

方法一: NavigateUrl=’ <%#Eval("userID","~/PersonalManage/userInfo.aspx?uid={0}") %>’

方法二: NavigateUrl='<%# "~/PersonalManage/PersonalInfoChange.aspx?UID="+Eval("userID") %>'

 

如果是GrilView控件的HyperLinkField,则可以这样写(因为GrilView控件的HyperLinkField的NavigateUrl不支持直接在=号后面加绑定)

<asp:HyperLinkField HeaderText="个人信息" Text="查看" DataNavigateUrlFormatString="~/PersonalManage/PersonalInfoChange.aspx?uid={0}" DataNavigateUrlFields="userID" />

 

也可以将HyperLinkField转换为TemplateField,然后再在TemplateField里加HyperLink,再按照前面的方法做即可

原文地址:https://www.cnblogs.com/jinmingjie/p/2530649.html