aspx在同一个页面中传值是很容易的(如textBox1.Text等)但有时必须向另一个页面传值用以前asp的方法的确觉得不怎么样,还要用Request.Form等东西好象又回到了从前。这里使用一个类的静态属性作为两个类的外的全局变量实现了两个页面间传值.
aspx在同一个页面中传值是很容易的(如textBox1.Text等)但有时必须向另一个页面传值用以前asp的方法的确觉得不怎么样,还要用Request.Form等东西好象又回到了从前。这里使用一个类的静态属性作为两个类的外的全局变量实现了两个页面间传值.举一个简单的例子如下:
先定义一个包含静态属性的类:
以下是引用片段: using System; namespace study { /// <summary> /// CIndex 的摘要说明。 /// </summary> public class CIndex { public static string name=""; public CIndex() { } } } |
然后在一个包含信息提交的页面中这样写:
以下是引用片段: <%@ Page language="c#" Codebehind="submit.aspx.cs" AutoEventWireup="false" Inherits="study.submit" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <HEAD> <title>submit</title> <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content=http://schemas.microsoft.com/intellisense/ie5> </HEAD> <body MS_POSITIONING="GridLayout"> <form runat="server" ID="Form1"> <asp:TextBox id="textBox1" runat="server" /> <asp:Button text="提交" runat="server" ID="Button1" /> </form> </body> </HTML> |
Codebehind:首先引入study命名空间using study;再加入Button1的Click事件
以下是引用片段: private void Button1_Click(object sender, System.EventArgs e) { CIndex.name=textBox1.Text;//将要传到另一页的值赋给类的静态属性 Response.Redirect("getsubmit.aspx"); } |
然后在另一个页面里面的codebehind里加入下面代码:
以下是引用片段: private void Page_Load(object sender, System.EventArgs e) { Response.Write("你输入的参数值是: "+CIndex.name); } |
声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!