WPF菜鸟问题:在登录窗体有Textbox1用于输入用户名,在主界面窗体有一个label1
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF菜鸟问题:在登录窗体有Textbox1用于输入用户名,在主界面窗体有一个label1相关的知识,希望对你有一定的参考价值。
怎么实现主界面的label1,显示登录成功时输入的用户名,最好是代码,初学,对于理论不是很理解
登录时的用户名应该在之后会用很多次,所以使用全局变量Static来保存这个信息。
首先准备保存这个信息的类
例如:UserInfo(用户信息)
public string UserName get; set;
之后在初始化这个类(在这里就在登录窗体里吧,另做个SystemInfo之类的类更好)
例如:Window1(你的登录页面)
public static UserInfo gUserInfo; // 全局类
public Window1()
InitializeComponent();
this.btnLogin.Click += new RoutedEventHandler(btnLogin_Click);
void btnLogin_Click(object sender, RoutedEventArgs e)
if(/*验证*/true)
// 登录成功
gUserInfo.UserName = "要保存的用户名";
// 打开主页面
在MainWindow的Load事件里如下
lblUserName.Content = Window1.gUserInfo.UserName;// 有问题请追问。追问
this.btnLogin.Click += new RoutedEventHandler(btnLogin_Click);
不知道这行代码什么意思? btnLogin编译不通过啊,提示不包含这个的定义
简单说就是在CS代码上添加btnLogin按钮的点击事件。(要是在Xaml已添加事件就不需要这行)
编译不用过是因为在Xaml界面上没有这个名字的控件。把btnLogin改成你的登录按钮的名字就可以了。(你的界面应该有『登录』这个按钮吧)
你应该有个登录界面和主体界面吧
设置一个主体界面的参数
假如主体界面的为Windows1
public Window1(string name)
InitializeComponent();
label1.Content = name;
在你登录成功的后 显示界面的时候实例化一下就行了
Window1 w = new Window1(name);
w.Show();
这个比较简单 不用再做一个实体类来存这个变量
拿到名字后在做成全局变量,也可以直接读赋值后的lable的值
本回答被提问者采纳 参考技术B string UsersName="admin";if(textbox1.text!=UsersName)
MessageBox.Show("输入错误")
else
MessageBox.Show("输入正确") //可以跳转到你的主界面了
追问
不是登录验证那个,是想在主界面的一个label中显示当前登录的用户名
以上是关于WPF菜鸟问题:在登录窗体有Textbox1用于输入用户名,在主界面窗体有一个label1的主要内容,如果未能解决你的问题,请参考以下文章
C# wpf 中 一个窗体中的texbox内容显示另一个窗体中的listview中的内容。如何实现