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

 更新时间:2015年11月27日 10:36:23   作者:Jimmy.Yang  
这篇文章主要介绍了C#实现窗体间传值的方法,结合实例形式较为详细的分析了C#针对窗体间传值的处理技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例分析了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()没有重载。

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

相关文章

  • C#泛型委托的用法实例分析

    C#泛型委托的用法实例分析

    这篇文章主要介绍了C#泛型委托的用法,以实例形式较为详细的分析了C#委托的功能与相关使用技巧,需要的朋友可以参考下
    2015-05-05
  • C# 实现俄罗斯方块(附源码)

    C# 实现俄罗斯方块(附源码)

    这篇文章主要介绍了C# 实现俄罗斯方块的实例,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • unity实现录音并保存本地

    unity实现录音并保存本地

    这篇文章主要为大家详细介绍了unity实现录音并保存本地,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • automation服务器不能创建对象 解决方法

    automation服务器不能创建对象 解决方法

    本文主要介绍如何解决“automation服务器不能创建对象”错误,从而解决Visual Studio.Net不能正常使用的问题,需要的朋友可以参考下。
    2016-06-06
  • unity 文件流读取图片与www读取图片的区别介绍

    unity 文件流读取图片与www读取图片的区别介绍

    这篇文章主要介绍了unity 文件流读取图片与www读取图片的对比分析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • C#多线程处理多个队列数据的方法

    C#多线程处理多个队列数据的方法

    本文将结合实例代码,介绍C#多线程处理多个队列数据的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • 详解C#中的接口属性以及属性访问器的访问限制

    详解C#中的接口属性以及属性访问器的访问限制

    这篇文章主要介绍了详解C#中的接口属性以及属性访问器的访问限制,文中讲到了使用访问器实现接口时添加访问修饰符的问题,需要的朋友可以参考下
    2016-01-01
  • C#实现进程管理的启动和停止实例

    C#实现进程管理的启动和停止实例

    这篇文章主要介绍了C#实现进程管理的启动和停止方法,以操作记事本程序为例,实例分析了C#针对进程操作的基本技巧,需要的朋友可以参考下
    2015-07-07
  • C#编程自学之数据类型和变量三

    C#编程自学之数据类型和变量三

    C#语言类型系统提出的一个核心概念装箱(boxing)拆箱(unboxing)。装箱和取消装箱的概念是C#的类型系统的核心。它在“值类型”和“引用类型”之间的架起了一座桥梁,使得任何“值类型”的值都可以转换为object类型的值,反过来转换也可以。
    2015-10-10
  • C#实现Windows服务安装卸载开启停止

    C#实现Windows服务安装卸载开启停止

    本文主要介绍了C#实现Windows服务安装卸载开启停止,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07

最新评论