实现C#窗体间传值的方法

本篇内容主要讲解“实现C#窗体间传值的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“实现C#窗体间传值的方法”吧!

C#窗体间传值是如何实现的呢?首先我们来看看需要什么设备,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;   }  }

C#窗体间传值方法的介绍:

使其成为主窗体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#窗体间传值的方法”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!