zoukankan      html  css  js  c++  java
  • [转贴]C#中实现窗体间传值

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

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

    FMChild fmChild = new FMChild();
    fmChild.ShowDialog();
    fmChild.Dispose(); 

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

    private string strValueA;
    public string StrValueA
    {
    get { return strValueA; }
    set { strValueA = value; }

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

    方法一:

    FMChild fmChild = new FMChild();
    fmChild.ShowDialog(this);
    fmChild.Dispose(); 

    方法二:

    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。

            

    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只能使用:

    FMChild fmChild = new FMChild();
    FMChild.Owner = this;
    fmChild.ShowDialog();
    fmChild.Dispose(); 

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

    作者:菩提树下的杨过
    出处:http://yjmyzz.cnblogs.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    demo2动态加载显示商品详情页
    demo1 动态显示view或弹框 动态隐藏view或弹框
    ios 继承UITableViewController,更改tableview样式
    ios数组基本用法和排序大全
    demo1 动态显示view或弹框 动态隐藏view或弹框
    ios数组基本用法和排序大全
    爬虫从入门到放弃
    软件测试方法
    熟悉项目需求,要知道产品增删修改了哪些内容,才会更快更准确的在该项目入手。
    速达光耀开发版软件关于360安全卫士杀掉的说明
  • 原文地址:https://www.cnblogs.com/yjmyzz/p/1022524.html
Copyright © 2011-2022 走看看