2

我正在使用asp.net,并且正在使用gridview。我将 GridView 中的一个字段设置为表示类别名称的 HyperLinkField。我从数据库中提取名称和 ID,但我永远无法确定它们是什么,因为它们是单独添加的。我希望能够通过查询字符串将更改的 CategoryId 传递到另一个页面。如何使用 GridView 执行此操作?

4

2 回答 2

2

在您的超链接字段中,将 DataNavigateUrlFields 设置为您的 ID 列,并将 DataNavigateUrlFormatString 设置为要导航到的 Url(其中 {0} 将替换为 ID)

<asp:HyperLinkField 
    DataNavigateUrlFields="ID" 
    DataNavigateUrlFormatString="Target.aspx?ID={0}"
    DataTextField="Name" 
    Target="_blank">
</asp:HyperLinkField>
于 2009-02-12T16:49:10.970 回答
-1

您可以使用 a<asp:TemplateField />作为列之一而不是 a<asp:BoundField />

代码示例:

<asp:TemplateField HeaderText="Name">
    <ItemTemplate>
       <a href="/new_page?categoryId=<%#Container.DataItem("id")"><%#Container.DataItem("name")</a>
    </ItemTemplate>
</asp:TemplateField>

可能有一种更简洁的方法来执行此操作,而不是使用锚元素,但您应该明白这一点。

于 2009-02-12T16:43:32.357 回答