服务器之家

服务器之家 > 正文

C#实现窗体间传值实例分析

时间:2021-11-04 13:10     来源/作者:Jimmy.Yang

本文实例分析了C#实现窗体间传值的方法。分享给大家供大家参考,具体如下:

1、VS 2005的Visual C# Windows应用程序和Visual C#智能设备Pocket PC 2003设备应用程序。

假设我们需要点击主窗体FMMain中的某一个按钮时打开子窗体FMChild并将某一个值传给子窗体FMChild,一般情况下,我们点击按钮显示子窗体FMChild的代码为:

?
1
2
3
FMChild fmChild = new FMChild();
fmChild.ShowDialog();
fmChild.Dispose();

如果我们需要将主窗体FMMain中的string strValueA的值传给FMChild,那么我们首先对strValueA进行如下处理:

?
1
2
3
4
5
6
private string strValueA;
public string StrValueA
{
get { return strValueA; }
set { strValueA = value; }
}

使其成为主窗体FMMain的一个属性,接着修改显示子窗体的代码为以下两种的其中一种。

方法一:

?
1
2
3
FMChild fmChild = new FMChild();
fmChild.ShowDialog(this);
fmChild.Dispose();

方法二:

?
1
2
3
4
FMChild fmChild = new FMChild();
FMChild.Owner = this;
fmChild.ShowDialog();
fmChild.Dispose();

然后在修改子窗体FMChild中申明一个主窗体FMMain对象,

复制代码 代码如下:
FMMain fmMain;

在需要使用主窗体FMMain的string strValueA的地方加上如下代码:
复制代码 代码如下:
fmMain = (FMMain)this.Owner;

这样,就可以获得主窗体FMMain中strValueA的值了。

 

这时,如果你需要将子窗体FMChild中的string strValueB传给主窗体FMMain,同样处理string strValueB。

?
1
2
3
4
5
6
private string strValueB;
public string StrValueB
{
get { return strValueB; }
set { strValueB = value; }
}

那么你在关闭子窗体代码fmChild.Dispose();后,可以写一些代码来保存或者处理FMChild的strValueB,例如:

复制代码 代码如下:
string strTmp = fmChild.StrValueB;

注意,在Visual C#智能设备Pocket PC 2003设备应用程序中显示子窗体FMChild只能使用:

 

?
1
2
3
4
FMChild fmChild = new FMChild();
FMChild.Owner = this;
fmChild.ShowDialog();
fmChild.Dispose();

在Visual C#智能设备Pocket PC 2003的设备应用程序中ShowDialog()没有重载。

希望本文所述对大家C#程序设计有所帮助。

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部