在ASP.NET中可以使用Server.Transfer实现在页面间传值,但这种方法需要创建源页面的实例,也就是使用一种面向对象的方法在页面间传值。这种方法的具体步骤为:
(1)在源页面中定义相关属性,用于带出该页面中的值。
(2)在源网页中使用Server.Transfer方法转到目标网页;
(3)在目标网页中使用Context.Handler属性获取源网页中的值。
下面使用一个例子来介绍。
在源网页中的代码页(假设这个源网页名称为FirstPage),添加属性
public string UserName
{
get //定义get访问器返回该页面中需要传出的值
{
return TextBox1.Text;
}
}
public string UserSex
{
get
{
return TextBox2.Text;
}
}
紧接着可以使用按钮触发页面的跳转
private void Button1_Click (object sender, System.EventArgs e)
{
Server.Transfer("SecondPage.aspx");
}
在目标页面的Load事件中可以添加下面的代码:
private void Page_Load (object sender, System.EventArgs e)
{
//首先定义源网页的一个实例
FirstPage firstPage1;
//使用Context.Handler得到源网页实例的引用
firstPage1 = (FirstPage)Context.Handler;
Label1.Text = firstPage1.UserName; //获取源网页中的UserName属性的值
Label2.Text = firstPage1.UserSex; //获取源网页中的UserSex属性的值
}
这种方法麻烦,但是面向对象的,安全性也较高一些。
新闻热点
疑难解答
图片精选