我正在使用 a HyperLinkField
inside a gridview
,并且我想链接到另一个URL + 一个 ID。
<div id="searchResults" runat="server">
<asp:GridView ID="gvSearchResult" runat="server" AutoGenerateColumns = "false"
CaptionAlign="NotSet" CellPadding="5">
<Columns>
<asp:TemplateField HeaderText="Användare">
<ItemTemplate>
<%# Eval("UName")%>
<br />
</ItemTemplate>
</asp:TemplateField>
<asp:HyperLinkField DataNavigateUrlFields="UName"
DataNavigateUrlFormatString='/MemberPages/profile.aspx?ID=<%# Eval("PID") %>'
DataTextField="UName"
HeaderText="Besök sida"
SortExpression="Name"
ItemStyle-Width="100px"
ItemStyle-Wrap="true" />
</Columns>
</asp:GridView>
</div>
gridview
正在使用datasource
和databind
。它抱怨:
DataNavigateUrlFormatString="/MemberPages/profile.aspx?ID=<%# Eval("PID") %>"
我不确定在哪里使用<%# Eval("PID") %>
,我确定有 PID 之类的东西,我已经仔细检查过。
如果我正在使用NavigateUrl="/MemberPages/profile.aspx?ID=<%# Eval("PID") %>"
,我也会得到同样的错误:
Literal content ('<asp:HyperLinkField DataNavigateUrlFields="UName"
DataNavigateUrlFormatString="/MemberPages/profile.aspx?ID=') is not allowed within a 'System.Web.UI.WebControls.DataControlFieldCollection'.