2009-02-12 80 views
2

我正在使用asp.net,我正在使用gridview。我將GridView中的一個字段設置爲表示類別名稱的HyperLinkField。我從數據庫中提取名稱和ID,但我無法確定它們是什麼,因爲它們是分開添加的。我希望能夠通過查詢字符串將改變的CategoryId傳遞給另一個頁面。我如何使用GridView來做到這一點?使用GridView HyperLinkField設置CategoryID

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

有可能是這樣做的,而不是使用錨件的清潔方法:

回答

2

在你的超鏈接欄,設置DataNavigateUrlFields你的ID列和DataNavigateUrlFormatString設置爲網址導航到(其中{0}將ID來代替)

<asp:HyperLinkField 
    DataNavigateUrlFields="ID" 
    DataNavigateUrlFormatString="Target.aspx?ID={0}" 
    DataTextField="Name" 
    Target="_blank"> 
</asp:HyperLinkField> 
+0

你的意思是DataTextField =「名稱「,那麼你不需要DataTextFormatString – bendewey 2009-02-12 16:51:26

-1

您可以通過使用一個<asp:TemplateField />爲您列,而不是<asp:BoundField />

代碼示例之一做,但你應該明白。