zoukankan
html css js c++ java
winform+c#之窗体之间的传值 Virus
窗体传值可以分为两类。
1、主窗体往子窗体传值
有两种方法,一种是在子窗体提供重载构造函数,利用重载构造函数传递值,适用于传值数量比较少;第二种是,在子窗体中定义一个主窗体对象,然后就可以接收到主窗体的属性值了,适用于传值数量大。
主窗体代码如下:
public
partial
class
frmParent : Form
{
private
string
strValueA
=
""
;
public
string
StrValueA
{
get
{
return
this
.strValueA;
}
set
{
this
.strValueA
=
value; }
}
public
frmParent()
{
InitializeComponent();
}
private
void
button1_Click(
object
sender, EventArgs e)
{
this
.strValueA
=
textBox1.Text;
frmChild frmchild
=
new
frmChild();
frmchild.Owner
=
this
;
frmchild.ShowDialog();
frmchild.Dispose();
}
private
void
button2_Click(
object
sender, EventArgs e)
{
frmChild frmchild
=
new
frmChild(
this
.textBox1.Text);
string
returnValue
=
""
;
if
(frmchild.ShowDialog()
==
DialogResult.OK)
{
returnValue
=
frmchild.Str;
this
.textBox1.Text
=
returnValue;
}
}
}
子窗体代码如下:
public
partial
class
frmChild : Form
{
private
string
str;
public
string
Str
{
get
{
return
this
.str; }
set
{
this
.str
=
value; }
}
private
frmParent frmparent;
public
frmChild()
{
InitializeComponent();
}
public
frmChild(
string
str)
{
this
.str
=
str;
InitializeComponent();
this
.textBox1.Text
=
str;
}
private
void
frmChild_Load(
object
sender, EventArgs e)
{
frmparent
=
(frmParent)
this
.Owner;
//
this.textBox1.Text = frmparent.StrValueA;
}
private
void
button1_Click(
object
sender, EventArgs e)
{
//
frmparent = (frmParent)this.Owner;
this
.Str
=
this
.textBox1.Text;
this
.DialogResult
=
DialogResult.OK;
this
.Close();
}
}
2、从子窗体返回值到主窗体中
利用了子窗体的属性保存子窗体的值,在主窗体中可以访问到子窗体的属性
主窗体代码如下:
public
partial
class
frmParent : Form
{
private
string
strValueA
=
""
;
public
string
StrValueA
{
get
{
return
this
.strValueA;
}
set
{
this
.strValueA
=
value; }
}
public
frmParent()
{
InitializeComponent();
}
private
void
button2_Click(
object
sender, EventArgs e)
{
frmChild frmchild
=
new
frmChild(
this
.textBox1.Text);
string
returnValue
=
""
;
if
(frmchild.ShowDialog()
==
DialogResult.OK)
{
returnValue
=
frmchild.Str;
this
.textBox1.Text
=
returnValue;
}
}
}
子窗体代码如下:
public
partial
class
frmChild : Form
{
private
string
str;
public
string
Str
{
get
{
return
this
.str; }
set
{
this
.str
=
value; }
}
private
frmParent frmparent;
public
frmChild()
{
InitializeComponent();
}
private
void
frmChild_Load(
object
sender, EventArgs e)
{
frmparent
=
(frmParent)
this
.Owner;
//
this.textBox1.Text = frmparent.StrValueA;
}
private
void
button1_Click(
object
sender, EventArgs e)
{
//
frmparent = (frmParent)this.Owner;
this
.Str
=
this
.textBox1.Text;
this
.DialogResult
=
DialogResult.OK;
this
.Close();
}
}
【Blog】
http://virusswb.cnblogs.com/
【MSN】
jorden008@hotmail.com
【说明】转载请标明出处,谢谢
反馈文章质量,你可以通过快速通道评论:
查看全文
相关阅读:
排序算法的实现
图——广度优先遍历(邻接矩阵存储)
最大子列和问题-4种解法
PATB 1015. 德才论 (25)
PATB 1018. 锤子剪刀布
PATB 1019. 数字黑洞 (20)
常用协议的默认端口号
统一资源定位符URL
hdoj1009 FatMouse' Trade——贪心算法
hdoj2037 贪心算法——今年暑假不AC
原文地址:https://www.cnblogs.com/virusswb/p/1131276.html
最新文章
自定义jar到本地maven的思路
Linux 下 安装百度云
javaWeb乱码问题
编程时遇到问题的解决方向
关于IDE与环境变量的一点说明
8、Linux基础(四)
9、Linux基础(五)
7、Linux基础(三)
6、Linux 基础(二)
5、linux建组
热门文章
4、Linux基础
3、网络基础
2、操作系统
1、计算机的基础
fianl关键词
服务器系统设置常用命令
java的单例设计模式
Hbase对时,时差范围的确定
Hbase对时,时差范围的确定
使用递归原理根据文件夹路径,删除文件夹
Copyright © 2011-2022 走看看