HyperLinkField DataNavigateUrlFormatString

时间:2013-02-01 08:46:32

标签: c# asp.net hyperlink

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

这个领域到底是做什么的?

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

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

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

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

2 个答案:

答案 0 :(得分:3)

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

注意:

  

格式字符串仅在DataNavigateUrlFields时应用   财产设定。

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

用例

  1. 主要用于Gridview或Listview,您需要基于数据字段的动态链接。
  2. 与为每个超链接手动添加查询字符串相同。
  3. 使用其他页面中的此值,您可以访问Request属性。

    if(Request["ProductID"]!=null)
    var productID=Request["ProductID"].ToString();
    

答案 1 :(得分:1)

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