#region
using System;
using System.Windows.Forms;
using CSFrameworkV5.Business.BLL_Permission;
using CSFrameworkV5.Common;
using CSFrameworkV5.Core;
using CSFrameworkV5.Core.Common;
using DevExpress.Utils;
#endregion
namespace CSFrameworkV5.Library
{
public partial class frmLock : Form
{
private bool _IsLogin = false;
private bool _IsUnlockClicked;
private frmLock()
{
InitializeComponent();
}
private void btnExitSys_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void btnLock_Click(object sender, EventArgs e)
{
xtraTabControl1.SelectedTabPage = xtraTabPage2;
}
private void btnUnLock_Click(object sender, EventArgs e)
{
if (!ValForm()) return;
var pwd = KeyProvider.Default.Encrypt(txtPwd.Text);
if (new bllUser().TryLogin(txtUser.Text, pwd))
{
_IsUnlockClicked = true;
Owner.Show();
Close();
}
else
{
_IsUnlockClicked = false;
Msg.Warning("用户账号或密码不正确!!");
txtPwd.Focus();
}
}
///
/// 锁定程序
///
///
public static bool ExecuteLock(Form mainForm)
{
var frm = new frmLock();
frm.Icon = mainForm.Icon;
frm.Text = mainForm.Text;
frm.WindowState = mainForm.WindowState;
frm.Size = mainForm.Size;
frm.Location = mainForm.Location;
frm.Owner = mainForm;
frm.txtUser.EditValue = Loginer.CurrentUser.Account;
frm.txtUser.Enabled = false;
frm.ShowDialog();
return frm._IsLogin;
}
private void frmLock_FormClosing(object sender, FormClosingEventArgs e)
{
if (!_IsUnlockClicked) Application.Exit();
}
private void frmLock_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.L &&
xtraTabControl1.SelectedTabPage == xtraTabPage1)
xtraTabControl1.SelectedTabPage = xtraTabPage2;
}
private void frmLock_Load(object sender, EventArgs e)
{
xtraTabControl1.ShowTabHeader = DefaultBoolean.False;
xtraTabControl1.SelectedTabPage = xtraTabPage1;
}
private void frmLock_Shown(object sender, EventArgs e)
{
Owner.Hide();
}
private bool ValForm()
{
if (string.IsNullOrEmpty(txtUser.Text.Trim()))
{
Msg.Warning("请输入登录帐号!");
txtUser.Focus();
return false;
}
if (string.IsNullOrEmpty(txtPwd.Text.Trim()))
{
Msg.Warning("请输入密码!");
txtPwd.Focus();
return false;
}
return true;
}
}
}