在网格视图中使用HyperLinkField进行URL导航

MrP*_*ram 6 c# asp.net gridview hyperlink

我正在使用HyperLinkField内部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>
Run Code Online (Sandbox Code Playgroud)

gridview使用datasourcedatabind.它在抱怨:

DataNavigateUrlFormatString="/MemberPages/profile.aspx?ID=<%# Eval("PID") %>"
Run Code Online (Sandbox Code Playgroud)

我不知道在哪里使用<%# 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'.
Run Code Online (Sandbox Code Playgroud)

sem*_*mao 10

如果需要使用"内部属性值,请使用"作为分隔符

Attribute='Some value with " symbol'
Run Code Online (Sandbox Code Playgroud)

如果您需要使用'内部属性值,请使用"

Attribute="Some value with ' symbol"
Run Code Online (Sandbox Code Playgroud)

还要更改列定义

<asp:HyperLinkField DataNavigateUrlFields="PID" 
                    DataNavigateUrlFormatString="/MemberPages/profile.aspx?ID={0}"
                    DataTextField="UName" 
                    HeaderText="Besök sida" 
                    SortExpression="Name" 
                    ItemStyle-Width="100px"
                    ItemStyle-Wrap="true" />
Run Code Online (Sandbox Code Playgroud)

在DataNavigateUrlFormatString属性中,您使用DataNavigateUrlFields中指定的数据列(格式化类似于String.Format方法).