⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmuser.cs

📁 本论文叙述了联机考试系统的现状以及C#语言的概况。重点介绍了联机考试系统的实现过程:包括系统分析、 系统调查、 数据流程分析、功能设计、 数据库设计、 系统物理配置方案、 系统实现、 系统测试和调试。
💻 CS
📖 第 1 页 / 共 3 页
字号:
			//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 + -