如何从form1传递2个对象到form2
本文关键字:对象 form2 2个 传递 form1 | 更新日期: 2023-09-27 18:11:27
如何在winforms中使用c#将2个对象从form1传递到form2
我知道这样传递一个对象:
Form G = new frm2(sc);
G.ShowDialog();
提前致谢
创建如下2个参数的构造函数:
public partial class frm2 :Form
{
public frm2(List<int> object1, List<string> object2)
{
}
.....
......
}
和调用:
Form G = new frm2(object1, object2);
G.ShowDialog();
第二选项:
你可以在表单中创建属性,并像下面这样传递它:
Form G = new frm2();
G.Object1 = object1;
G.Object2 = object2;
G.ShowDialog();
你的frm2将像这样:
public partial class frm2 : Form
{
public frm2()
{
}
public List<int> Object1 { get; set; }
public List<string> Object2 { get; set; }
.....
......
}
为什么不创建一个带两个参数的构造函数呢?
Form G = new frm2(obj1, obj2);
G.ShowDialog();
与frm2: public partial class frm2 : Form {
private Object1 _obj1;
private Object2 _obj2;
void frm2(Object1 obj1, Object2 obj2) {
this._obj1 = obj1;
this._obj2 = obj2;
}
}
只需修改frm2的构造函数以接受2个参数:
public void frm2(object obj1, object obj2)
{
//to do...
}
第二个方法是编写一个自己的构造函数来接受这两个对象。如果表单是强制的,那么隐藏默认构造函数,并强制传递两个对象。