NET 桌面程序 界面传参数问题

来源:百度知道 编辑:UC知道 时间:2024/05/19 03:13:51
下面这个方法可以。但不好用

界面1打开界面2,界面2填写数据传给界面1

界面2
BuyManage buy = new BuyManage(ID,name,Num,Unit,SBP);
buy.Show();
界面1已经写好接受参数的东西了。不过这样用不符合要求
因为会新出一个页面,有没有什么办法不新出一个页面也可以传参数的?
可是.Show()还是会打开一个新窗口,那样就会有2个窗口了
如果多次传,每次都会只有一条数据

界面2
class InputForm {
private BuyManage buy;
public InputForm(BuyManage buy) {
this.buy = buy;
}

//传递数据到界面1
private OnOk() {
buy.Add(ID,name,Num,Unit,SBP);
buy.Show();
this.Close();
}
}

界面1
class BuyManage {
//接受参数
public Add(string ID,string name,string Num,string Unit,string SBP) {
//添加数据
}

//显示界面2
public ShowInput() {
InputForm input = new InputForm(this);
input.Show();
}
}

界面1打开界面2,界面2填写数据传给界面1
界面1(form1)只打开一个界面2(form2)的方法
form2 f2;-在form1的类中先声明
在打开form2的事件中写

if (f2 == null || f2.IsDisposed)
{
f2 = new form2();
f2.Show();
}
这样就只能打开一个界面2~~
要把form1的东西传到form2界面去的话,在new form2的时候,在构造函数里面传递~

直接吧 界面1 传进去,
BuyManage buy = new BuyManage(this);