下面是我们想要的页面中写的代码..
protected void Page_Load(object sender, EventArgs e)
{
if (this.Page.PreviousPage != null)
{
int rowIndex = int.Parse(Request.QueryString["RowIndex"]);
GridView GridView1 = (GridView)this.Page.PreviousPage.FindControl("gv1");
GridViewRow row;
row = GridView1.Rows[rowIndex];
lblid.Text = row.Cells[1].Text;
lblname.Text = (row.FindControl("lblName") as Label).Text;
lblmt.Text = row.Cells[3].Text;
lblyer.Text = row.Cells[4].Text;
}
}
答案 0 :(得分:1)
您有几个选择,请考虑
会话状态
如果您要在页面之间发送数据,可以考虑使用Session State。
ASP.NET会话状态使您可以存储和检索a的值 用户作为用户在Web应用程序中导航ASP.NET页面。 HTTP是 无国籍协议。这意味着Web服务器会处理每个HTTP 请求页面作为独立请求。服务器保留没有 了解在先前请求期间使用的变量值。 ASP.NET会话状态在此期间识别来自同一浏览器的请求 作为会话的有限时间窗口,并提供一种持久的方式 该会话持续时间的变量值。默认情况下,ASP.NET 为所有ASP.NET应用程序启用会话状态。最重要的是,它 很容易!
将数据放入(例如,在default1.aspx上)
Session["ID"] = lblid.Text;
Session["Name"] = lblname.Text;
Session["Amt"] = lblmt.Text;
Session["Year"] = lblyer.Text;
把它拿出来(例如在default2.aspx上)
string Id= Session["ID"]
string Name= Session["Name"]
string Amout = Session["Amt"]
string year = Session["Year"]
查询字符串
如果要发送少量数据(例如id = 4),使用查询字符串变量可能更实际。
您应该探索使用查询字符串变量,例如
http://www.domain.com?param1=data1¶m2=data2
然后您可以像
那样获取数据string param1 = Request.QueryString["param2"]; // value will be data1
string param2 = Request.QueryString["param2"]; // value will be data2
您可以使用How do you test your Request.QueryString[] variables之类的内容吗?获取数据。
如果您想了解更多有关查询字符串变量的信息,请查看他们的wikipedia article