0

我有带有“HyperLinkField”的 GridView,当我单击表中的几个名称之一时,这会将我带到另一个页面。然后我想显示有关单击项目的一些信息。在这段代码中,我描述了我想要单击的任何行,打开新页面并从上一页获取 FirstName clicked 字段。我需要有关代码中此字段的更多信息:

这个字段到底是做什么的?

DataNavigateUrlFormatString="Page.aspx?FirstName={0}" />

更具体地说:"FirstName={0}" />"

<asp:HyperLinkField 
 DataTextField="FirstName" 
 HeaderText="First Name"
 DataNavigateUrlFields="FirstName" 
 DataNavigateUrlFormatString="Page.aspx?FirstName={0}" />

如何从新页面中的上一页获取此点击字段?

4

2 回答 2

3

{0}是用于替换所需值的占位符。在上面的示例中,datanavigateurlformatstring 与 datanavigateurlfields 结合使用。它将替换 DataNavigateUrlFields 值。DataNavigateUrlFormatString

笔记 :

仅当设置了 DataNavigateUrlFields 属性时才应用格式字符串。

datanavigateurlfields="ProductID"
datanavigateurlformatstring="~\details.aspx?ProductID={0}"       

用例

  1. 主要用于需要动态链接的Gridview或Listview,基于数据字段。
  2. 这与为每个超链接手动添加查询字符串相同。

要在其他页面中使用此值,您可以访问该Request属性。

if(Request["ProductID"]!=null)
var productID=Request["ProductID"].ToString();
于 2013-02-01T08:55:20.203 回答
1

DataNavigateUrlFormatString中的 {0} 占位符将替换为 HyperLinkField 对象中的字段值。在您的代码中,它将替换为 FirstName 值

于 2013-02-01T08:49:26.597 回答