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

求助!!!C#窗口间的数据传递
用C#做一个管理系统(数据库程序),有登录窗口,管理员窗口,以管理员身份登录后登录窗口通过Hide()方法隐藏,然后通过Show()方法显示管理员窗口。问题出来了:

  在管理员窗口中有修改登录密码一项,需要获取当前登录用户的用户名(用户名密码在SQL数据库的一张表里(Users)),再通过查询语句获取密码,以便进行密码验证,要怎么做才能实现呢?

  还有就是我通过这样的方式进行窗口的切换,合理吗?




------解决方案--------------------
通过构造函数传值:
例:form2的值传到form1中,在form1中写构造函数如下:
string c_strTblName=null;
public Form1(string p_strTabName)
{
InitializeComponent();
c_strTblName = p_strTabName;
}
form2中传值如下:
string c_strTabName = null;
Form f1=null;
protected void button1_Click(object sender, EventArgs e)
{
f1 = new Form(c_strTabName);
f1.Show();
}
------解决方案--------------------
给登录窗体设置一个公共的只读属性,用于给别的对象传递当前登录用户。

在管理员窗体里只要去读出这个属性就行了。

属性的具体类型就看你需要了。简单的话直接一个整形或者字符串型,复杂的话可以弄成结构。