winform--记住密码 收藏
要引用IO包
private string accountFilePath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) +"\\accounts.dat ";
private IDictionary<string, string> accounts = new SortedList<string, string>();
/// <summary>
/// 记住密码
/// </summary>
private void ReloadAccounts()
{
this.txtUserName.AutoCompleteCustomSource.Clear();
accounts.Clear();
if (!File.Exists(accountFilePath))
{
return;
}
using (StreamReader reader = new StreamReader(accountFilePath))
{
while (true)
{
string username = reader.ReadLine();
if (string.IsNullOrEmpty(username)) break;
string password = reader.ReadLine();
if (string.IsNullOrEmpty(password)) break;
accounts.Add(username, password);
txtUserName.AutoCompleteCustomSource.Add(username);
}
}
}
/// <summary>
/// 登录事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnLogin_Click(object sender, EventArgs e)
{
if (accounts.ContainsKey(this.txtUserName.Text))
{
accounts[this.txtUserName.Text] = this.txtUserPass.Text;
}
else
{
accounts.Add(this.txtUserName.Text, this.txtUserPass.Text);
}
using (StreamWriter writer = new StreamWriter(accountFilePath))
{
foreach (KeyValuePair<string, string> account in accounts)
{
writer.WriteLine(account.Key);
writer.WriteLine(account.Value);
}
}
ReloadAccounts();
string user = this.txtUserName.Text.Trim();
//加密
string bbb = Crypto.EncryptData("jm", this.txtUserPass.Text.Trim());
string pwd = bbb;
string filter = "username='" + user + "'" + " and password='" + pwd + "'";
DataTable loginTable = manager.selectAll("userlist", "*", filter);
if (this.txtUserName.Text.Trim() == "" || bbb == "")
{
MessageBox.Show("用户名或密码不能为空!");
this.txtUserName.Focus();
}
else if (loginTable.Rows.Count == 0)
{
MessageBox.Show("用户名或密码错误!");
this.txtUserName.Focus();
}
else
{
MessageBox.Show("登录成功!");
}
}
//当鼠标离开用户名时自动获得密码
private void txtUserName_Leave(object sender, EventArgs e)
{
string password = string.Empty;
if (accounts.TryGetValue(this.txtUserName.Text, out password))
this.txtUserPass.Text = password;
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhangjianjianjianjia/archive/2009/11/06/4776397.aspx