WPF登录功能,对于密码框的操作,其实WPF有个PasswordBox专门的密码框控件,完全可以选择自己要显示的密码符号。

在链接数据库后,点击登录时需要判断用户名和密码框是否为空,而PasswordBox不像textbox那样判断

textbox判断文本框为空

 if (this.UserName.Text.Trim()=="")
            {
                MessageBox.Show("请输入用户名!");
            }

PasswordBox判断是否为空

#region 密码框获取内容
            //使用一个InPtr类型值来存储加密字符串的起始点
            IntPtr p = System.Runtime.InteropServices.Marshal.SecureStringToBSTR(this.PassWord.SecurePassword);

            //使用.net内部算法把IntPtr指向处的字符集合转换成字符串
            string password = System.Runtime.InteropServices.Marshal.PtrToStringBSTR(p);

if(string.IsNullOrEmpty(password))
                {
                    MessageBox.Show("请输入密码!", "提示", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    return;
                }

后面链接数据库判断输入的用户名或者密码是否错误

SqlConnection sqlcon = new SqlConnection(constr);
                    string strSelect = "SELECT Password FROM Userlogin WHERE Username='" + this.UserName.Text.Trim() + "'";
                    sqlcon.Open();
                    SqlCommand cmd = new SqlCommand(strSelect, sqlcon);
                    SqlDataReader dataread = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
                    if(dataread.Read())
                    {
                        string rpwd = dataread["Password"].ToString();
                        if(rpwd.Trim()==password)
                        {
                            mainwindow = new MainWindow();
                            this.Hide();
                            mainwindow.Show();
                        }
                        else
                        {
                            MessageBox.Show("账号或密码错误!");
                        }

 

posted @ 2018-03-15 11:24  风轻云淡wjr  阅读(1744)  评论(0编辑  收藏  举报