开发者

What code do I type in next page after passing gridview button clicked rowindex

I pass the row index value into next page when gridview button clicked using this code

if(e.CommandName=="select")
{
      int Id = int.Parse(e.Comm开发者_Go百科andArgument.ToString());
      //Label1.Text = Id.ToString();
       Response.Redirect("~/manclothes1.aspx?Id=" + e.CommandArgument.ToString());

}

but i don't know what code i write in next page to display row data please can anyone help me


In ASP.NET you don't actually pass code to a new page. Instead you modify the controls on the current page and the ASP.NET framework re-renders the page for you. Instead of the Response.Redirect line you want something like

 DataGrid1.EditItemIndex = Id;


In the page_load of manclothes1.aspx you can try

protected void Page_Load(object sender, EventArgs e)
{

    if (Request.QueryString["Id"] != null)
    {
         var id = Request.QueryString["Id"];
         // do something with id variable
         ...
    }
}


You'll probably want to reference whatever code on the current page populates the gridview with data in the first place. Essentially, where the code on the current page gets many rows to populate a gridview, the code on the manclothes1.aspx page will get one row. If it's data from a database, the query will likely be very much the same but with an additional WHERE clause to filter by (I'm assuming) an ID value, which is probably a primary key (or the primary key, if we're talking about only one table).

To put this into context, what the call to Response.Redirect() is doing is telling the client (browser) to issue an entirely new request (a GET request, that is) for an entirely new resource (manclothes.aspx with a query string parameter). So understand that "the next page" knows nothing of the gridview on the current page. Nor should it, really. The request should be handled entirely separate from the current page.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜