c#如何在一个窗体中调用另一个窗体的数组对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#如何在一个窗体中调用另一个窗体的数组对象相关的知识,希望对你有一定的参考价值。

我在form5中定义了一个数组对象student []s=new student[50],我想在form3中调用它,怎么做?

参考技术A 在form3中这样写:
form5
f5=new
form5();
赋值:f5.s[0]=student的实例;...
取值:student
s=f5.s[0];...
当然你也可以定义数组的时候定义成静态的,但是不推荐
还有,你可以在form3里在定义一个构造函数,以student作为参数
参考技术B 你可以建一个公共的类,然后在form5中读写数组,再到form3中调用,具体可以参见我在百度知道上回答的http://zhidao.baidu.com/question/157815557.html 参考技术C 关于窗体间对相的相互引用(或者说调用),有很多方法,具体可以去搜下:1、使用构造方法现实窗体间的传值2、子母窗体实现3、委托,4、……还有,嘿嘿 参考技术D 这样定义 public student []s=new student[50]form3中这样调用 parent.student 第5个回答  2013-08-13 在form5中写个方法 在form3中调用方法

C#窗体设计——多个窗体之间的调用

概述:

一个Windows应用程序通常由多个窗体组成、在创建一个窗体时,系统会自动在应用程序中创建Form类的一个实例对象,当前显示的窗体就是一个类的对象。同样的情况,当想从当前窗体中显示另一个窗体时,必须在当前窗体中创建另一个窗体的实例。

使用以下代码可以打开另一个窗体:新窗体类 窗体实例名 = new 新窗体类();

但是只是实例化一个窗体类的对象不能让窗体“显示”出来,还要调用该对象的方法才能显示出窗体,窗体对象有两个方法可以完成该功能:

窗体实例名.Show();
Show()方法以无模式对话框方式显示该窗体,即新窗体显示后,主窗体(调用窗体)和子窗体(被调用窗体)之间可以任意切换,互不影响。

窗体实例名.ShowDialog();
ShowDialog()方法以模式对话框显示该窗体,即新窗体显示后,必须操作完子窗体,并关闭完子窗体之后才能操作主窗体。

例:分别调用模式窗体和无模式窗体。

设计如下图所示三个窗体Form1、Form2和Form3:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Form1中两个按钮的代码如下:

private void button1_Click_1(object sender, EventArgs e)
{
    Form2 f2 = new Form2();//定义Form2类对象,窗体实例名f2随便取的
    f2.Show();//以无模式窗体方式调用
}
private void button2_Click(object sender, EventArgs e)
{
    Form3 f3 = new Form3();//定义Form3类对象,窗体实例名f3随便取的
    f3.ShowDialog();//以模式窗体方式调用
}

结果如下:
在这里插入图片描述
调用无模式窗体时,可以两个窗体任意切换没有影响,本结果调用Form2窗体后,还可以继续操作Form1窗体。
在这里插入图片描述
调用模式窗体时,只能先使用当前最新打开的窗体Form3,不能使用Form1窗体。

以上是关于c#如何在一个窗体中调用另一个窗体的数组对象的主要内容,如果未能解决你的问题,请参考以下文章

C#里怎么在一个窗体里调用另一个窗体的控件

C#中如何在一个窗体中调用另一个窗体控件中的数据?

C#中如何在一个窗体中调用另一个窗体控件中的数据?

C#中如何在另一个类中调用Form1窗体控件的方法呢?

C# 委托调用另一个窗体的函数

C#中如何获取另外一个窗体中传递过来的值?