0

「HyperLinkField」を使用したGridViewがあります。テーブル内のいくつかの名前のいずれかをクリックすると、別のページに移動します。次に、クリックしたアイテムに関する情報を表示したいと思います。このコードでは、クリックした行、新しいページを開き、前のページのFirstNameクリックフィールドを取得することを説明しています。コード内のこのフィールドに関する詳細情報が必要です。

このフィールドは正確に何をしますか?

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 に答える