vs2005页面Server.Transfer,和 Request.Form传值问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 02:37:42
起始页面代码:

public partial class _Default : System.Web.UI.Page
{
protected void Button1_Click(object sender, EventArgs e)
{
Server.Transfer("Default2.aspx");
}
}
接收页代码:
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.TextBox1.Text = Request.Form["TextBox1"].ToString();
this.TextBox2.Text = Request.Form["TextBox2"].ToString();
this.Label1.Text = Request.Form["Label1"].ToString();

}
}
我的第一个页面上有TextBox1、TextBox2、Label1、Button1
我的第二个页面有TextBox1、TextBox2、Label1
问题是我的第二个页面上的TextBox都能得到前一页的text值,但为什么第二页的label就不能都得到text值呢??(第一页的控件都有text值的)
有这种写法的,不然我也不可能得到TextBox的值,它可以直接获取控件的值,你那种写法我知道。不过当有大量控件传值的时候很麻烦的。比如说30条,你也要写30个发送页面的,30个接收页面的么??

哪有Request.Form这种写法?!
正确的是发送页面:Server.Transfer("Default2.aspx?parm="+文本框中值+"&parm2="+Label中值);或
Response.Redirect("Default2.aspx?parm="+文本框中值+"&parm2="+Label中值);
然后接受页面:textbox2.text=Request.QueryString("parm").ToString();
Label1.Text=Request.QueryString("parm2").ToString();

asp 的写法,你可以使用页面当中值传递的几种方法,cookie,session,request...等来实现