当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 如何实现在窗体和窗体之间进行传递数据

ASP.NET
C#教程:简化的初始化
C#教程:隐式类型的局部变量
ASP.NET 2.0教程:Bind标签和Eval标签
用C#语言获取CPU利用率
ASP.Net实例:直接在邮件中内联附件内嵌图片
ASP.NET教程:性能优化的方法
ASP.NET开发方式的四层架构的Web应用系统构造
BasicHTTP-唯一能直接与Java交互的方式
ASP.NET教程:截取字符串
如何用ASP.NET实现多附件上传?
.Net程序员必读:八个实用网站推荐
.NET环境下为网站增加IP过滤功能
在.Net框架类库中如何使用定时器类
Asp.net是可以帮你实现Urlrewrite的
.NET开发过程中易被忽视的问题
ASP.NET教程:多个Set排列算法
c# 分布式事务以及MSDTC
解决ASP.NET2.0网站中对路径访问被拒绝问题
ASP.NET通过WMI创建站点添加虚拟目录和主机头
VS 2008完美地支持JavaScript和ASP.NET AJAX

ASP.NET 中的 如何实现在窗体和窗体之间进行传递数据


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 193 ::
收藏到网摘: n/a

大家都知道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);
}

这样就完成了.简单吧.