在登陆窗口输入账号密码登陆后,登陆窗口消失,主窗口显示,我希望主窗口显示该账号使用人的相关信息,所以需要登陆窗口的账号id传递到主窗口上。
我在网上找了下,说只需在要提供值的窗口里将值声明为public后,就可以在要引用值的窗口里通过“类名.变量名”使用了。如:LoginWindow.cs
public string id;
private void Login_Click(object sender, RoutedEventArgs e)
{ id = "admin";
MainWindow window = new MainWindow();
Application.Current.MainWindow = window;
window.Show();
this.Close();
}MainWindow.cs
Login_Window lw = new Login_Window();
label1.Content = lw.id;但是没效果,但是直接public string id = "admin"定义后,主窗口却可以显示出id的值,请问要怎么弄可以按照输入的账号是什么就显示什么呢?
我在网上找了下,说只需在要提供值的窗口里将值声明为public后,就可以在要引用值的窗口里通过“类名.变量名”使用了。如:LoginWindow.cs
public string id;
private void Login_Click(object sender, RoutedEventArgs e)
{ id = "admin";
MainWindow window = new MainWindow();
Application.Current.MainWindow = window;
window.Show();
this.Close();
}MainWindow.cs
Login_Window lw = new Login_Window();
label1.Content = lw.id;但是没效果,但是直接public string id = "admin"定义后,主窗口却可以显示出id的值,请问要怎么弄可以按照输入的账号是什么就显示什么呢?
//使用winform窗体传值的方法就可以啊.
//子窗体
public Window2(string id)
{
InitializeComponent();
this.textBox1.Text = id;
}
//父窗体
Window2 w2 = new Window2("IDvalue");
//Application.Current.MainWindow = w2;
w2.Show();
this.Close();
public string id;
改为
public static string id;MainWindow.cs中
label1.Content = LoginWindow.id;这就是利用静态变量传值,到哪里都是一样的,最大的好处是全局缓存,任何地方都可以用。