子窗口访问父窗口的数据元素

子窗口访问父窗口的数据元素

ID:38651758

大小:16.15 KB

页数:8页

时间:2019-06-17

子窗口访问父窗口的数据元素_第1页
子窗口访问父窗口的数据元素_第2页
子窗口访问父窗口的数据元素_第3页
子窗口访问父窗口的数据元素_第4页
子窗口访问父窗口的数据元素_第5页
资源描述:

《子窗口访问父窗口的数据元素》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、假设我们需要点击主窗体FMMain中的某一个按钮时打开子窗体FMChild并将某一个值传给子窗体FMChild,一般情况下,我们点击按钮显示子窗体FMChild的代码为:FMChildfmChild=newFMChild();fmChild.ShowDialog();fmChild.Dispose();如果我们需要将主窗体FMMain中的stringstrValueA的值传给FMChild,那么我们首先对strValueA进行如下处理:privatestringstrValueA;publicstringStrValueA{get{ret

2、urnstrValueA;}set{strValueA=value;}}使其成为主窗体FMMain的一个属性,接着修改显示子窗体的代码为以下两种的其中一种。方法一:FMChildfmChild=newFMChild();fmChild.ShowDialog(this);fmChild.Dispose();方法二:FMChildfmChild=newFMChild();FMChild.Owner=this;fmChild.ShowDialog();fmChild.Dispose();然后在修改子窗体FMChild中申明一个主窗体FMMain

3、对象,FMMainfmMain;在需要使用主窗体FMMain的stringstrValueA的地方加上如下代码:fmMain=(FMMain)this.Owner;这样,就可以获得主窗体FMMain中strValueA的值了。这时,如果你需要将子窗体FMChild中的stringstrValueB传给主窗体FMMain,同样处理stringstrValueB。privatestringstrValueB;publicstringStrValueB{get{returnstrValueB;}set{strValueB=value;}}那么你

4、在关闭子窗体代码fmChild.Dispose();后,可以写一些代码来保存或者处理FMChild的strValueB,例如:stringstrTmp=fmChild.StrValueB;注意,在VisualC#智能设备PocketPC2003设备应用程序中显示子窗体FMChild只能使用:FMChildfmChild=newFMChild();FMChild.Owner=this;fmChild.ShowDialog();fmChild.Dispose();在VisualC#智能设备PocketPC2003的设备应用程序中ShowDia

5、log()没有重载。C#窗体间传值的几种方法调用窗体(父):Form1,被调用窗体(子):Form2方法1:所有权法//Form1://需要有一个公共的刷新方法publicvoidRefresh_Method(){//...}/在调用Form2时,要把Form2的所有者设为Form1Form2f2=newForm2();f2.Owner=this;f2.ShowDialog();//Form2://在需要对其调用者(父)刷新时Form1f1;f1=(Form1)this.Owner;f1.Refresh_Method();方法2:自身传递

6、法//Form1://需要有一个公共的刷新方法publicvoidRefresh_Method(){//...}Form2f2=newForm2();f2.ShowDialog(this);//Form2:privateForm1p_f1;publicForm2(Form1f1){InitializeComponent();p_f1=f1;}//刷新时p_f1.Refresh_Method();方法3:属性法//Form1://需要有一个公共的刷新方法publicvoidRefresh_Method(){//...}//调用时Form2f

7、2=newForm2();f2.P_F1=this;Form2f2=newForm2();f2.P_F1=this;f2.Show();//Form2:privateForm1p_f1;publicForm1P_F1{get{returnp_f1;}set{p_f1=value;}}//刷新时p_f1.Refresh_Method();方法4:委托法//声明一个委托publicdelegatevoidDisplayUpdate();//Form1://需要有一个公共的刷新方法publicvoidRefresh_Method(){//...

8、}//调用时Form2f2=newForm2();f2.ShowUpdate+=newDisplayUpdate(Refresh_Method);f2.Show();//Form2://声明事

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。