• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

高分求解

jzinfojzinfo 2004-10-30 04:54:36
请问在a页面中如何将数组利用session传到b页面,并在b页面显示数组内容,即刻结贴
...全文
74 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jzinfojzinfo 2004-10-30
谢了,虽然我不懂C#,我漫漫研究
回复
nchen123 2004-10-30
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace MyPlayground
{
/// <summary>
/// Session2 的摘要说明。
/// </summary>
public class Session2 : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
object o = Session["Arr"];
if (o == null)
Response.Write("空");
else
{
int[,] arr = (int[,]) o;
for (int i = 0; i < arr.GetLength(0); i++)
{
for (int j = 0; j < arr.GetLength(1); j++)
{
Response.Write(arr[i, j].ToString() + " , ");
}
Response.Write("<br>");
}
}
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion
}
}
回复
nchen123 2004-10-30
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace MyPlayground
{
/// <summary>
/// Session1 的摘要说明。
/// </summary>
public class Session1 : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
int[,] arr = new int[3, 2];
for (int i = 0; i < 3; i++)
for (int j = 0; j < 2; j++)
arr[i, j] = i * j;
Session["Arr"] = arr;

Response.Redirect("Session2.aspx");
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion
}
}
回复
如果你 在a 声明 的字段 是public 的
那么 你使用Server.Transfer("b.aspx")
可以 直接
用 a 页面的 字段
回复
noyester 2004-10-30
假如我要传的值很多呢,比如5个字段
回复
listhome 2004-10-30
这个方法可传复杂的对像,TextBox等!
回复
noyester 2004-10-30
能否写的更清楚一些呢?谢谢
回复
listhome 2004-10-30
使用Server.Transfer
虽然这种方法有点复杂,但也不失为一种在页面传值的方式。
举个例子看看:
1、创建一个web form
2、在新建的web form中放置一个button1,在放置两个TextBox1,TextBox2
3、为button按钮创建click事件
代码如下:
private void Button1_Click
(object sender, System.EventArgs e)
{
Server.Transfer("webform2.aspx");
}
4、创建过程来返回TextBox1,TextBox2控件的值代码如下:
public string Name
{
get
{
return TextBox1.Text;
}
}

public string EMail
{
get
{
return TextBox2.Text;
}
}
5、新建一个目标页面命名为webform2
6、在webform2中放置两个Label1,Label2
在webform2的Page_Load中添加如下代码:
private void Page_Load
(object sender, System.EventArgs e)
{
//创建原始窗体的实例
WebForm1 wf1;
//获得实例化的句柄
wf1=(WebForm1)Context.Handler;
Label1.Text=wf1.Name;
Label2.Text=wf1.EMail;

}
运行,即可看到传递后的结果了。
回复
bitsbird 2004-10-30
string s="";
s.ToCharArray();
回复
为什么一定 用session呢?
隐藏 字段 就是啊
回复
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2004-10-30 04:54
社区公告
暂无公告