日期:2014-05-18  浏览次数:20861 次

求助:把一个窗口的值赋予另一个窗口
比如有两个窗口:注册和登陆
注册完之后返回登陆窗口,使注册的ID自动显示在登陆窗口的ID输入框中。

------解决方案--------------------
http://topic.csdn.net/u/20110407/19/c1068d69-7331-4d02-bc0b-f5ba7a5f8dd8.html
------解决方案--------------------
构造函数传值就可以了
重写登陆form的构造函数
string uid;
public Form2(string in);
{
uid = in;
}

注册窗口完成后使用
Form2 form2 = new Form2(string 注册的id);
form2.show();

------解决方案--------------------
在你的登录窗口里面两个字段 封装属性
private string userName;
public string UserName{
set{userName = value;}
}
string passWorld;
public string PassWorld{
set{PassWorld = value;}
}

注册的代码里面
this.Hide();
new frmReg(this).ShowDialog();//程序会等待 frmReg窗口返回才继续执行(把你要在frmReg窗体上要修改的参数传递过去)
this.Show();

frmReg的构造器里面接收一个登录窗口 并且 复制给全局的
frmSingin Frm;
public frmReg(frmSingin frm){
....
Frm = frm;
}

然后再frmReg里面 就可以 用Frm.UserName 来进行操作、、
- -!、、方法有n多 就发挥你的想想吧、、
------解决方案--------------------
如果在bs中
直接用string id=Request.querrystring("Id");

如果是cs的话
直接用构造函数好一点

在注册窗体中

string id=用户名;
formdelu f1=new formdelu(id);
f1.show();


在登录中

string id=string.empty;
public frmdenglu:this(string id1)
{
id=id1;
}
}


------解决方案--------------------
C# code

登录窗体

注册按钮事件
Form2 form2 = new Form2();
if(form2.show()== DialogResult.OK)
{
txtId=form2.uid;
}


注册窗体

public Form2();
{

}

public string uid;

注册按钮事件
    private void Button_Click(object sender, EventArgs e)
{
Uid=注册的ID;
this.DialogResulk=DialogResult.OK;

}