3

を使用してid、あるページから別のページに送信するにはどうすればよいですか? GridView コントロールがあり、各レコードにはリンク ボタンが含まれています。ASP.NETC#

<asp:TemplateField>              
    <ItemTemplate>
      <asp:LinkButton ID="lbtn_naatscat" runat="server" Text="arshad" CommandName="view_user_naats_gv" Font-Underline="false" />
    </ItemTemplate>
</asp:TemplateField>

idリンクボタンにバインドしました:

if (e.Row.RowType == DataControlRowType.DataRow)
{
    ((LinkButton)e.Row.FindControl("lbtn_naatscat")).CommandArgument 
        = DataBinder.Eval(e.Row.DataItem, "cate_id").ToString();
    ((LinkButton)e.Row.FindControl("lbtn_naatscat")).Text 
        = DataBinder.Eval(e.Row.DataItem, "title").ToString();
}

idユーザーがこのリンクボタンをクリックしたときに、これを別のページに渡したいと思います。

4

8 に答える 8

3

LinkButton's Commandイベントを処理し、次を使用できCommandArgumentます。

void LinkButton_Command(Object sender, CommandEventArgs e) 
{
    if(e.CommandName == "view_user_naats_gv")
    {
        Resonse.Redirect("UserNaats.aspx?catID=" + e.CommandArgument.ToString());
    }
}
于 2013-05-13T13:30:28.093 に答える
2

Sessionこの目的のために を作成できます。

次のようにします。

Session["Id"]=e.CommandArgument.ToString() //Id you want to pass to next page

このようにして、セッション変数が作成されます。そして、次のページでアクセスできるようになります。

次のページでそれを取得している間:

Id=Session["Id"]

その他の代替手段:

  1. ビューの状態

  2. 制御状態

  3. 隠しフィールド

  4. クッキー

  5. クエリ文字列

  6. アプリケーションの状態

  7. セッション状態

  8. プロファイル プロパティ

ASP.NET の状態管理テクニック:

http://msdn.microsoft.com/en-us/library/75x4ha6s%28v=vs.100%29.aspx

お役に立てば幸いです。

于 2013-05-13T13:29:38.830 に答える
1

非表示フィールドに保存し、コード ビハインド ファイルの次のページでアクセスします。

ここに別のSO投稿があります

ASP で隠しフィールドを渡す別の例

頑張ってください!

于 2013-05-13T13:29:03.483 に答える
1

HyperLinkFieldフィールドを次のように使用します

 <asp:HyperLinkField DataNavigateUrlFields="Database ID Field" 
                           DataNavigateUrlFormatString="~/PageName.aspx?ID={0}" 
                           DataTextField="Database ID Field" HeaderText="ID" />

次に、リダイレクト先のページで、ID のクエリ文字列を確認します。

   string id = Request.QueryString["ID"]
于 2013-05-13T13:33:04.910 に答える
0

GridView でハイパーリンクを使用する方が理にかなっていると思います。例えば:

<ItemTemplate>
    <asp:HyperLink ID="link_naatscat" runat="Server"                                             
        Text="arshad"
        ToolTip="arshad"
        NavigateUrl=<%#"~/YourPage.aspx?id=" + Eval("submitid")%>>
    </asp:HyperLink> 
</ItemTemplate>
于 2013-05-13T13:32:11.087 に答える
0

イベントを使用Row_Commandすると、クエリ文字列を使用して次のページに送信できます。

protected void gvDeals_RowCommand(object sender, GridViewCommandEventArgs e)
{
   if(e.CommandName.Equals("MyCommand")
   {
      string value=calculate();
      Response.Redirect("~/MyPage.aspx?item=" + value);
   }
}
于 2013-05-13T13:31:02.993 に答える