7. 把Visual Studio .Net的当前页面设置为WebForm1.aspx页面的设计界面,并从【工具箱】中的【Web窗体】选项卡中往WebForm1.aspx页面中拖入下列组件,并执行相应的操作:
二个TextBox组件,分别用来输入向目标窗体传递的数据。
一个Button组件,用以实现源页面向目标页面传递数据,并在这个Button组件拖入WebForm1.aspx设计页面后,双击它,则系统会在WebForm1.aspx..cs文件中自动产生这个组件的Click事件对应的处理代码。WebForm1.aspx设计后的页面如图03所示:
图03:WebForm1.aspx设计后的页面
8. 把Visual Studio .Net的当前页面设置为WebForm2.aspx页面的设计界面,并从【工具箱】中的【Web窗体】选项卡中往WebForm2.aspx页面中拖入下列组件,并执行相应的操作:
二个Label组件,用以显示源页面向目标页面传递的数据。
双击WebForm2.aspx设计页面,则系统会在WebForm2.aspx..cs文件中自动Page页面的Load事件对应的处理代码。程序将在此事件中接收源页面向目标页面传递来的数据,并通过Lable组件显示出来。WebForm2.aspx设计后的页面如图04所示:
图04:WebForm2.aspx设计后的页面
9. 把Visual Studio .Net的当前窗口切换到WebForm1页面的代码编辑窗口,即:WebForm1.aspx.cs文件的编辑窗口。用下列代码替换WebForm1.aspx.cs中的Button1组件的Click事件对应的处理代码,下列代码的功能是实现源页面向目标页面传递数据:
private void Button1_Click ( object sender , System . EventArgs e ) { string sUrl; //定义一个字符串,此字符串中包含源页面向目标传递的数据 sUrl = "WebForm2.aspx?name=" + TextBox1 . Text + "&email=" + TextBox2 . Text ; //从源页面中获得传递的数据 Response . Redirect ( sUrl ) ; //向目标页面传递数据 } |
10. 把Visual Studio .Net的当前窗口切换到WebForm2页面的代码编辑窗口,即:WebForm2.aspx.cs文件的编辑窗口。用下列代码替换WebForm2.aspx.cs中Page的Load事件对应的处理代码,下列代码的功能是从源页面中接收数据,并通过相应组件显示接收到的数据:
private void Page_Load ( object sender , System . EventArgs e ) { Label1 . Text = Request . QueryString [ "name" ] ; //使用QueryString从源页面中接收name变量数据,并通过Label1显示 Label2 . Text = Request . QueryString [ "email" ] ; //使用QueryString从源页面中接收email变量数据,并通过Label2显示 // 在此处放置用户代码以初始化页面 } |
11. 至此第一种实现ASP.NET页面间数据传递的方法就介绍完了,此时单击快捷键【F5】运行程序,并在第一个页面中二个TextBox组件分别输入"阿虎"、"ahah@etang.com "后,具体如图05所示,再单击页面中的Button1按钮,则会得到图06所示的页面,可见的确把源页面中的数据传递到了目标页面中:
图05:运行页面01
图06:运行页面02