📄 frmuser.cs
字号:
//check for gender
if((!this.radMale.Checked) && (!this.radFemale.Checked))
{
allValidated=false;
}
//check for status
if((!this.radActive.Checked) && (!this.radInactive.Checked))
{
allValidated=false;
}
index++; //will be used later to find whether this form is being called for the first time
//check if all the text fields have been entered
foreach (Control ctrl in this.Controls)
{
if ((ctrl.GetType().ToString()== "System.Windows.Forms.TextBox") && (ctrl.Name!="txtConfirmPwd"))
if (ctrl.Text.Trim()== "")
allValidated = false;
}
if (!allValidated)
{
MessageBox.Show ("详细信息不完整。请补充完整");
this.txtUsername.Focus();
}
else
{
//enclose the whole code in a exception handling block
try
{
if(this.tdModifTable !=null)
{
if(this.tdModifTable .Rows .Count >0)
{
this.tdModifTable .Rows [this.intModifRowNumber ]["usrid"] = this.txtUsername.Text;
this.tdModifTable .Rows [this.intModifRowNumber ]["UsrName"] = this.txtName.Text;
this.tdModifTable .Rows [this.intModifRowNumber ]["Passwd"] = this.txtPassword.Text;
this.tdModifTable .Rows [this.intModifRowNumber ]["UsrStatus"] = this.status;
this.tdModifTable .Rows [this.intModifRowNumber ]["UsrType"] = this.cboUserType.Text;
this.tdModifTable .Rows [this.intModifRowNumber ]["Gender"] = this.gender;
this.tdModifTable .Rows [this.intModifRowNumber ]["Address"] = this.txtAddress.Text;
this.tdModifTable .Rows [this.intModifRowNumber ]["Emailid"] = this.txtEmail.Text ;
this.tdModifTable .Rows [this.intModifRowNumber ]["Phone"] = this.txtPhone.Text;
}
}
}
catch(Exception excep)
{
MessageBox.Show ("出现异常"+excep.StackTrace.ToString());
}
//check if new record is to be saved
//or record is to be updated
if(this.btnSave.Text == "保存(&S)")
{
//判断密码是否相同
if(this.txtPassword .Text .Trim ()!=this.txtConfirmPwd .Text .Trim ())
{
MessageBox.Show ("两次输入的密码不同,请重新输入","警告!");
this.txtPassword .Text ="";
this.txtConfirmPwd .Text="";
allValidated=true;
return;
}
frmUser.dtUpdate=CreateTable();
DataRow drUser = frmUser.dtUpdate.NewRow();
//get the data from the form into a data row
drUser["usrid"] = this.txtUsername.Text;
drUser["UsrName"] = txtName.Text;
drUser["Passwd"] = this.txtPassword.Text;
drUser["UsrStatus"] = this.status;
drUser["UsrType"] = this.cboUserType.Text;
drUser["Gender"] = this.gender;
drUser["Address"] = this.txtAddress.Text;
drUser["Emailid"] = this.txtEmail.Text ;
drUser["Phone"] = this.txtPhone.Text;
if(!this.pwdVerification()) //if passwords not verified
{
allValidated = false;
}
try
{
User objUser = new User();
objUser.InsertRecords(drUser);
MessageBox.Show ("已成功添加用户");
this.btnCancel.Text="关闭(&C)";
}
catch
{
MessageBox.Show ("用户已经存在,请输入其它名称!");
}
}
//if modification is being done then
//collect the data from the form into a row and
//send it to usersearch form
//提交修改
else
{
try
{
DataRow drModifRow=this.tdModifTable .Rows [this.intModifRowNumber ];
frmUserSearch.rowUpdated[count] = CompareRows(drBefore,drModifRow);
//set the update flag in the usersearch form to true.
frmUserSearch.updateflag =true;
dtUpdate=tdModifTable;
this.objUserSearch.Show();
this.Hide();
}
catch(Exception ex)
{
MessageBox.Show (ex.Message );
}
}
}
}
private void btnCancel_Click(object sender, System.EventArgs e)
{
if(this.localflag==3)
{
objUserSearch.Show();//user search form
this.Hide();
}
else
{
this.Hide();
}
}
public DataTable CreateTable()
{
dtUserTable = new DataTable("User");
DataColumn pKeyCol = dtUserTable.Columns.Add("UsrId", typeof(String));
pKeyCol.AllowDBNull = false;
pKeyCol.Unique = true;
dtUserTable.Columns.Add("UsrName", typeof(String));
dtUserTable.Columns.Add("Passwd", typeof(String));
dtUserTable.Columns.Add("UsrStatus", typeof(System.Boolean));
dtUserTable.Columns.Add("UsrType", typeof(String));
dtUserTable.Columns.Add("Gender", typeof(System.Boolean));
dtUserTable.Columns.Add("Address", typeof(String));
dtUserTable.Columns.Add("Emailid", typeof(String));
dtUserTable.Columns.Add("Phone", typeof(System.String));
return dtUserTable;
}
private void radMale_CheckedChanged(object sender, System.EventArgs e)
{
if (radMale.Checked)
{
this.gender=true;
}
}
private void radFemale_CheckedChanged(object sender, System.EventArgs e)
{
if (radFemale.Checked)
{
this.gender=false;
}
}
private void radInactive_CheckedChanged(object sender, System.EventArgs e)
{
if (this.radInactive.Checked)
{
this.status=false;
}
}
private void radActive_CheckedChanged(object sender, System.EventArgs e)
{
if (this.radActive.Checked)
{
this.status=true;
}
}
//for validation
private bool chkAlpha()
{
for(int i=0; i<this.txtName.Text.Length;i++)
{
if(! Char.IsLetter(this.txtName.Text,i))
{
return false;
}
}
return true;
}
public bool pwdVerification()
{
if(this.txtPassword.Text == this.txtConfirmPwd.Text)
return true;
else
MessageBox.Show("密码不匹配");
this.txtPassword.Clear();
this.txtConfirmPwd.Clear();
this.txtPassword.Focus();
return false;
}
public static bool CompareRows(DataRow drBefore, DataRow drAfter )
{
bool updated = false;
for( int currentIndex = 0; currentIndex < drBefore.Table.Columns.Count; currentIndex++ )
{
// Check all columns and compare the content of the
//col before and after Confirm was clicked
string col1=drBefore[currentIndex].ToString();
string col2=drAfter[currentIndex].ToString();
if (col1.CompareTo(col2)!=0)
{
//updated=true;
return true;
}
}
return updated;
}
private void ClearForm()
{
this.txtUsername.Text="";
this.txtName.Text ="";
this.cboUserType.Text="";
this.txtPassword.Text="";
this.txtConfirmPwd.Text ="";
this.txtAddress.Text="";
this.txtEmail.Text="";
this.txtPhone.Text ="";
if (this.radActive.Checked)
this.radActive.Checked=false;
if (this.radInactive.Checked)
this.radInactive.Checked=false;
if (this.radMale.Checked)
this.radMale.Checked=false;
if (this.radFemale.Checked)
this.radFemale.Checked=false;
}
private void txtUsername_Leave(object sender, System.EventArgs e)
{
if (this.txtUsername.Text.Trim().Length == 0)
{
errorMsg = ("用户姓名不能为空,请输入有效值");
this.errUser.SetError(this.txtUsername, errorMsg);
this.txtUsername.Focus();
}
else
{
this.errUser.SetError(this.txtUsername, "");
allValidated = true;
}
}
private void txtPassword_Leave(object sender, System.EventArgs e)
{
if (this.txtPassword.Text.Trim().Length == 0)
{
errorMsg = ("密码不能为空,请输入有效值");
this.errUser.SetError(this.txtPassword, errorMsg);
this.txtPassword.Focus();
}
else
{
this.errUser.SetError(this.txtPassword, "");
allValidated = true;
}
}
private void txtConfirmPwd_Leave(object sender, System.EventArgs e)
{
}
public bool ValidEmailAddress(string emailAddress, out string errorMessage)
{
// Confirm that the e-mail address string is not empty.
if(emailAddress.Length == 0)
{
errorMessage = "必须填写电子邮件地址。";
return false;
}
// Confirm that there is an "@" and a "." in the e-mail address, and in the correct order.
if(emailAddress.IndexOf("@") > -1)
{
if(emailAddress.IndexOf(".", emailAddress.IndexOf("@") ) > emailAddress.IndexOf("@") )
{
errorMessage = "";
return true;
}
}
errorMessage = "电子邮件地址必须是有效的电子邮件地址格式。\n" + "例如 'someone@example.com' ";
return false;
}
private void txtEmail_Leave(object sender, System.EventArgs e)
{
if(!ValidEmailAddress(txtEmail.Text, out errorMsg))
{
txtEmail.Select(0, txtEmail.Text.Length);
// Set the ErrorProvider error with the text to display.
this.errUser.SetError(txtEmail, errorMsg);
// this.txtEmail.Focus();
}
else
this.errUser.SetError(txtEmail, "");
}
private void txtName_Leave(object sender, System.EventArgs e)
{
if (this.txtName.Text.Trim().Length == 0)
{
errorMsg = ("用户名不能为空。请输入有效值");
this.errUser.SetError(this.txtName, errorMsg);
this.txtName.Focus();
}
else if(! chkAlpha())
{
errorMsg="用户名必须为字母";
this.errUser.SetError(this.txtName, errorMsg);
this.txtName.Focus();
}
else
this.errUser.SetError(txtName, "");
}
private void frmUser_Load(object sender, System.EventArgs e)
{
if (localflag!=3)
{
this.btnSave.Enabled=false;
this.radActive.Checked=true;
}
}
private void txtEmail_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
this.btnSave.Enabled=true;
}
private void btnHelp_Click(object sender, System.EventArgs e)
{
Help.ShowHelp(this,Environment.CurrentDirectory +@"\\OES_Help\OES_Help.chm");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -