📄 logincontrol.cs
字号:
}
private void OnLoad(object sender, System.EventArgs e)
{
txtPassword.PasswordChar = '\u25CF';
try
{
if (cboDomains.Text == "")
{
cboDomains.Text = System.Environment.UserDomainName;
}
}
catch
{
cboDomains.Text = "";
};
}
/// <summary>
/// Public property defining the headline text.
/// </summary>
public string HeadlineLabel
{
get
{
return lblHeader.Text;
}
set
{
lblHeader.Text = value;
}
}
public string[] Domains
{
get
{
return m_domains;
}
set
{
m_domains = value;
if (m_domains == null)
{
}
else if (m_domains.GetUpperBound(0) == -1)
{
}
else if (m_domains.GetUpperBound(0) == 0 && m_domains[0] == null)
{
}
else
{
try
{
cboDomains.Items.Clear();
SortedList sl = new SortedList();
foreach (string s in m_domains)
{
string strX = s;
if (strX == null){strX = System.Environment.UserDomainName;}
sl.Add (strX,strX);
}
foreach (string s in sl.Values)
{
string strX = s;
if (strX == null){strX = System.Environment.UserDomainName;}
cboDomains.Items.Add(strX);
}
if (m_defaultDomain.CompareTo("") != 0) {cboDomains.Text = m_defaultDomain;}
}
catch
{
}
}
}
}
public Authentication.AuthenticationTypes AuthType
{
get
{
return m_AuthType;
}
set
{
m_AuthType = value;
}
}
/// <summary>
/// Public property defining the header text.
/// </summary>
public string HeaderLabel
{
get
{
return lblText.Text;
}
set
{
lblText.Text = value;
}
}
/// <summary>
/// Public property defining the label text before the Username textbox.
/// </summary>
public string UsernameLabel
{
get
{
return lblUsername.Text;
}
set
{
lblUsername.Text = value;
}
}
/// <summary>
/// Public property defining the default domain name.
/// </summary>
public string DefaultDomain
{
get
{
return m_defaultDomain;
}
set
{
m_defaultDomain = value;
if (m_defaultDomain == "")
{
m_defaultDomain = System.Environment.UserDomainName;
}
cboDomains.Text=m_defaultDomain;
}
}
/// <summary>
/// Public property defining the text on the login button.
/// </summary>
public string ButtonLabel
{
get
{
return btnLogin.Text;
}
set
{
btnLogin.Text = value;
}
}
public bool ShowMessageBox
{
get
{
return m_ShowMessageBox;
}
set
{
m_ShowMessageBox = value;
}
}
private void btnCancel_Click(object sender, System.EventArgs e)
{
this.Cancelled(sender,e);
}
private void btnLogin_Click(object sender, System.EventArgs e)
{
System.Windows.Forms.Cursor.Current = Cursors.WaitCursor;
btnCancel.Enabled = false;
btnLogin.Enabled = false;
txtPassword.Enabled = false;
txtUsername.Enabled = false;
cboDomains.Enabled = false;
txtPassword.Parent.Focus();
Application.DoEvents();
string m_uid = txtUsername.Text;
if (txtUsername.Text.Length == 0)
{
if (m_ShowMessageBox) MessageBox.Show("No username provided!","Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
errorProvider.SetError(btnLogin, "No username provided!");
txtPassword.Text = "";
this.Failed(m_uid);
}
else
{
Authentication ad = new Authentication();
ad.AuthType = m_AuthType;
string strRetVal = ad.Authenticate(cboDomains.Text,txtUsername.Text,txtPassword.Text);
if (strRetVal == "True")
{
this.Successful(m_uid);
}
else
{
if (m_ShowMessageBox) MessageBox.Show(strRetVal,"Error",MessageBoxButtons.OK,MessageBoxIcon.Error);
errorProvider.SetError(btnLogin, strRetVal);
txtPassword.Text = "";
this.Failed(m_uid);
}
}
try {System.Windows.Forms.Cursor.Current = Cursors.Default;}
catch {}
btnCancel.Enabled = true;
btnLogin.Enabled = true;
txtPassword.Enabled = true;
txtUsername.Enabled = true;
cboDomains.Enabled = true;
txtPassword.Focus();
}
private void txtPassword_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == System.Windows.Forms.Keys.Return) btnLogin_Click(sender,e);
if (e.KeyCode == System.Windows.Forms.Keys.Escape) this.Cancelled(sender,e);
}
private void txtUsername_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == System.Windows.Forms.Keys.Return) btnLogin_Click(sender,e);
if (e.KeyCode == System.Windows.Forms.Keys.Escape) this.Cancelled(sender,e);
}
private void cboDomains_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == System.Windows.Forms.Keys.Return) btnLogin_Click(sender,e);
if (e.KeyCode == System.Windows.Forms.Keys.Escape) this.Cancelled(sender,e);
}
private void btnLogin_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == System.Windows.Forms.Keys.Return) btnLogin_Click(sender,e);
if (e.KeyCode == System.Windows.Forms.Keys.Escape) this.Cancelled(sender,e);
}
private void btnCancel_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (e.KeyCode == System.Windows.Forms.Keys.Return) btnLogin_Click(sender,e);
if (e.KeyCode == System.Windows.Forms.Keys.Escape) this.Cancelled(sender,e);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -