ASP.NET 窗体间传值实现方法详解
假设ParentForm.aspx 页面上有TextBox1文本框和Open按钮
点击Open按钮弹出SubForm.aspx,SubForm.aspx页面上有TextBox1文本框和Close按钮
点击Close按钮关闭SubForm.aspx页面,并把子页面SubForm.aspx文本框的值显示到父页面ParentForm.aspx 的文本框上。
父窗体前台代码:
代码如下 复制代码
<script type="text/javascript">
function OpenSubForm(ret) {
var strPath = "http://www.111Cn.NeT /subForm.aspx"
var nHeight = 500
var nWidth = 500
var feature
feature = "Height= " + nHeight + ",Width=" + nWidth + ",top=30,Left=30";
feature += ",dependent=yes,location=no,resizable=yes,scrollbars=yes,status=yes,toolbar=no;";
window.open(strPath+"?Ret_Form=Form1&Ret_Value="+ret,'subForm',feature).focus();
return false;
}
</script>
父窗体后台代码:
代码如下 复制代码
private void Page_Load(object sender, System.EventArgs e)
{
// ペ?ジを初期化するユ?ザ? コ?ドをここに?啡毪筏蓼?br /> this.Button1.Attributes.Add("onClick","return OpenSubForm('TextBox1');");
}
子窗体后台代码:
代码如下 复制代码
private void Button1_Click(object sender, System.EventArgs e)
{
string strScript =string.Empty;
string strRetForm = String.Empty;
string strRetValue=String.Empty;
strRetForm=Request.Params["Ret_Form"];
strRetValue=Request.Params["Ret_Value"];
if (strRetForm == string.Empty)
{
strRetForm= "document.forms[0]";
}
strScript = "<script language=javascript>";
strScript += "window.opener." + strRetForm;
strScript += "." + strRetValue + ".value='" + this.TextBox1.Text.Trim() + "';";
strScript += "window.close();";
strScript += "</script>";
Response.Write(strScript);
}
上面是js其实也就是页面传值了,下面我把一些页面传值的代码发给大家参考。
页面间传值的几种方式 .
下面的代码片断演示了如何实现这个方法:
源页面WebForm1.aspx.cs中的部分代码:
代码如下 复制代码
private void Button1_Click(object sender, System.EventArgs e)
{
string url;
url="WebForm2.aspx?name=" + TextBox1.Text + "&email=" + TextBox2.Text;
Response.Redirect(url);
}
目标页面WebForm2.aspx.cs中的部分代码:
private void Page_Load(object sender, System.EventArgs e)
{
Label1.Text=Request.QueryString["name"];
Label2.Text=Request.QueryString["email"];
}
使用Session变量
源页面WebForm1.aspx.cs中的部分代码:
代码如下 复制代码
private void Button1_Click(object sender, System.EventArgs e)
{
//textbox1 and textbox2 are webform
//controls
Session["name"]=TextBox1.Text;
Session["email"]=TextBox2.Text;
Server.Transfer("WebForm2.aspx");
}
目标页面WebForm2.aspx.cs中的部分代码:
代码如下 复制代码
private void Page_Load(object sender, System.EventArgs e)
{
Label1.Text=Session["name"].ToString();
Label2.Text=Session["email"].ToString();
Session.Remove("name");
Session.Remove("email");
}
上面两种是常用的其它的就不介绍了,大家可自行去参考
更多详细内容请查看:http://www.111cn.net/net/net/49465.htm
ASP.NET 窗体间传值实现方法详解的更多相关文章
- Asp.Net MVC 扩展 Html.ImageFor 方法详解
背景: 在Asp.net MVC中定义模型的时候,DataType有DataType.ImageUrl这个类型,但htmlhelper却无法输出一个img,当用脚手架自动生成一些form或表格的时候, ...
- asp.net文本编辑器FCKeditor使用方法详解
文本编辑器的使用: 1.FCKeditor的官方网站是:http://www.fckeditor.net/download 目前最新的FCKeditor.Net_2.6.9版本. 请在此页下载:ht ...
- C#窗体间传值的简便方法/工具
一.问题:窗体间传值必须需要窗体之间有联系,具体有如下方式 窗体间传值涉及到窗体A必须拥有窗体B,这样才可以实现A-B之间传值 窗体A与窗体B在窗体/实例C中,A-B可互相通讯 其他方式,不细讨论,复 ...
- Pyqt 窗体间传值
窗体间传值网上有好多方法,比如新建文件,先将子类窗体的数据传到文件中,父窗体读取文件. Signal&Slot机制进行传值 等等 在这里,我们就举个采用apply方法:Signal& ...
- asp.net iis URLRewrite 实现方法详解
原文 asp.net iis URLRewrite 实现方法详解 实现非常简单首先你要在你的项目里引用两个dll:actionlessform.dll.urlrewriter.dll,真正实现重写的是 ...
- C# winform窗体间传值(使用委托或事件)
窗体间传值 今天得空,刚好看到网上好多人再找winform窗体间传值的问题,由于昨天项目的优化的感觉不错,就写了个C# winform窗体间传值的demo,希望能给需要的人的带来帮助: 工程的源代码地 ...
- 【转】WinForm窗体显示和窗体间传值
以前对WinForm窗体显示和窗体间传值了解不是很清楚 最近做了一些WinForm项目,把用到的相关知识整理如下 A.WinForm中窗体显示 显示窗体可以有以下2种方法: Form.ShowDial ...
- C#利用事件与委托进行窗体间传值简单小例子
本篇博客是利用C#委托与事件进行窗体间传值的简单小例子 委托与事件的详细解释大家可以参照张子阳的博客: http://www.tracefact.net/CSharp-Programming/Dele ...
- ASP.NET页面间传值的几种方式
ASP.NET页面间传值的几种方式 1.使用QueryString 使用QuerySting在页面间传递值已经是一种很老的机制了,这种方法的主要优点是实现起来非常简单,然而它的缺点是传递的值是会显示在 ...
随机推荐
- windows下安装,配置gcc编译器
在Windows下使用gcc编译器: 1.首先介绍下MinGW MinGW是指仅仅用自由软件来生成纯粹的Win32可运行文件的编译环境,它是Minimalist GNU on Windows的略称. ...
- C++ 名称空间
在程序中,只使用 using namespace std; 而不使用其他的名称空间,如using namespace boost; 这样的好处有: 1.可以避免不同名称空间中的名称冲突: 2.可以很清 ...
- Codeforces Round #136 (Div. 1)C. Little Elephant and Shifts multiset
C. Little Elephant and Shifts Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/pro ...
- C# 利用WORD模板和标签(bookmark) 批量生成WORD
前言: 由于对C#操作WORD不熟悉,也就留下这么一篇水文,别吐糟...=_=||| 利用Microsoft.Office.Interop.Word (2003版也就11版)——因为部分客户端还是用O ...
- onConfigurationChanged is not called&& 翻转屏幕不执行onConfigurationChanged方法&&onConfigurationChanged不执行
我总结出一句话: 如果target sdk>=13,必须使用如下方式声明activity:android:configChanges="orientation|screenSize&q ...
- GridView编辑删除操作
第一种:使用DataSource数据源中自带的编辑删除方法,这样的不经常使用,在这里就不加说明了. 另外一种:使用GridView的三种事件:GridView1_RowEditing(编辑).Grid ...
- 对jquery的 attr()和prop()理解
jquery1.6版本后引入了prop()方法,很多时候总是混淆attr()与prop()这俩,下面分析一下这俩的区别 在此之前,先来了解一下html 的attribute和property,因为jq ...
- io cache
http://blog.163.com/digoal@126/blog/static/163877040201571511020418 http://dirlt.com/
- linux之history
1.使用HISTTIMEFORMAT在历史中显示TIMESTAMP 通常情况下,当你在命令行中键入history时,终端中将显示你刚输入的命令及其编号.如果出于审查命令的目的,和命令一起显示时间戳将会 ...
- 基于jQuery的美食时间轴焦点图插件
这是一款非常炫酷的jQuery焦点图插件,这款jQuery焦点图的特点是有一个时间轴,点击切换按钮时,时间轴会逐渐移动,时间轴上的图片也会逐渐切换.另外,在图片上方也可以放置自定义样式的文字. 在线预 ...