当前位置:编程学习 > C#/ASP.NET >>

.NET中窗体间相互访问的几种方式

在我们的程序中,窗体之间经常要相互访问彼此的成员,调用彼此的方法,或者激发彼此的事件。下面就我的经验,简单谈谈在.NET中窗体间相互访问的几种方式。
以下给出了C#.NET和VB.NET的示例代码。用Form1、Form2类分别表示主、从窗体。
 
1、内部成员访问法,适合于主窗体访问它所创建的从窗体对象中的成员。只需将从窗体允许主窗体访问的那些成员加上internal或Friend限定符。例如:
C#主
private void ShowForm2Info() {
      Form2 f2 = new Form2();
      f2.Show();
      MessageBox.Show(f2.MyName);
}
C#从
internal string MyName = "A Form2 Object";
VB主
Private Sub ShowForm2Info()
      Dim f2 As New Form2
      f2.Show()
      MsgBox(f2.MyName)
End Sub
VB从
Friend MyName As String = "A Form2 Object"
 
2、将以上方法反过来用,让从窗体访问创建它的主窗体中的成员,需要增加一个步骤:在从窗体的构造函数中传入一个主窗体的引用,以便找到创建它的主窗体(新建的构造函数中不要忘了调用InitializeComponent()函数)。主窗体创建从窗体对象时传入自身的引用。例如:
C#主
private void ShowForm2() {
      Form2 f2 = new Form2(this);
      f2.Show();
}
 
internal string MyName = "A Form1 Object";
C#从
private Form1 f1;
public Form2(Form1 _f1) {
      InitializeComponent();
      f1 = _f1;
补充:asp.net教程,基础入门 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,