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

📄 frmrolemanage.cs

📁 一个好的系统 对初学者很有用啊 来看看啊
💻 CS
📖 第 1 页 / 共 2 页
字号:
            this.Controls.Add(this.groupBox2);
            this.Controls.Add(this.groupBox1);
            this.Controls.Add(this.btnSave);
            this.Controls.Add(this.btnAddRole);
            this.Controls.Add(this.btnDelRole);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
            this.MaximizeBox = false;
            this.MinimizeBox = false;
            this.Name = "FrmRoleManage";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
            this.Text = "角色管理";
            ((System.ComponentModel.ISupportInitialize)(this.dgRoles)).EndInit();
            this.groupBox1.ResumeLayout(false);
            this.groupBox2.ResumeLayout(false);
            this.groupBox2.PerformLayout();
            this.ResumeLayout(false);

		}
		#endregion

		private void MakeBind()
		{
			//方法:private void MakeBind()
			//参数:空
			//功能:1.以数据集的形式返回角色表赋给dsRole
			//      2.将窗体数据网格dgRoles与角色表绑定
			//      3.给滚动条RoleScroller的属性DtSet赋值
			//返回:空

			//事例化业务逻辑类
			RoleBLC roleBlc = new RoleBLC();
			//以数据集的形式返回角色表赋给dsRole
			this.dsRole = roleBlc.GetAllRole();
			this.dtRole = this.dsRole.Tables[0];
			//将窗体数据网格dgRoles与角色表绑定
			this.dgRoles.DataSource = this.dtRole;
			//给角色表临时添加一编号列
			DataColumn dcCurrent = new DataColumn("Current", typeof(int));
			this.dtRole.Columns.Add(dcCurrent);
			//给角色表编号列赋值
			int count = 1;
			foreach (DataRow row in this.dtRole.Rows)
			{
				row["Current"] = count++;
			}
			//设置窗体数据网格表现风格
			DataGridTableStyle dgStyle = new DataGridTableStyle();
			dgStyle.MappingName = this.dsRole.Tables[0].TableName;

			DataGridColumnStyle intCount = 
				new DataGridTextBoxColumn();
			intCount.MappingName = "Current";
			intCount.HeaderText = "编号";
			intCount.Width = 100;
			dgStyle.GridColumnStyles.Add(intCount);

			DataGridColumnStyle rolename = new DataGridTextBoxColumn();
			rolename.MappingName = "rolename";
			rolename.HeaderText = "角色名";
			rolename.Width = 125;
			dgStyle.GridColumnStyles.Add(rolename);

			DataGridColumnStyle description = new DataGridTextBoxColumn();
			description.MappingName = "description";
		    description.HeaderText = "说明";
			description.Width = 240;
			dgStyle.GridColumnStyles.Add(description);

			this.dgRoles.TableStyles.Add(dgStyle);

			this.txtRoleName.Enabled = false;
			this.txtRoleDescription.Enabled = false;
			this.btnAddRole.Enabled = true;
			this.btnDelRole.Enabled = true;
			this.btnEdit.Enabled = true;
			this.btnSave.Enabled = false;
            //this.btnAssignUseCase.Enabled = true;
			this.btnClick = BtnClick.SaveClick;
			//默认显示第一行
			if(this.dtRole.Rows.Count>0)
			{
				this.txtRoleName.Text = this.dtRole.Rows[0]["rolename"].ToString();
				this.txtRoleDescription.Text = this.dtRole.Rows[0]["description"].ToString();
			}
			this.dgRoles.Enabled = true;
		}

		private void btnAddRole_Click(object sender, System.EventArgs e)
		{
			//添加角色
			this.dgRoles.Enabled = false;
			this.btnClick = BtnClick.AddClick;
			this.btnAddRole.Enabled = false;
			this.btnDelRole.Enabled = false;
			this.btnEdit.Enabled = false;
            //this.btnAssignUseCase.Enabled = false;
			this.btnSave.Enabled = true;

			this.drCurrent = this.dsRole.Tables[0].NewRow();			
			this.drCurrent["rolename"] = "";
			this.drCurrent["description"] = "";
			this.dsRole.Tables[0].Rows.Add(this.drCurrent);



			this.txtRoleDescription.Text = "";
			this.txtRoleName.Text = "";
			this.txtRoleDescription.Enabled = true;
			this.txtRoleName.Enabled = true;

			this.dgRoles.Refresh();
		}

		private void btnSave_Click(object sender, System.EventArgs e)
		{
			//方法:private void btnSave_Click(object sender, System.EventArgs e)
			//参数:
			//功能:更新角色表
			//返回:空
			if(this.btnClick == BtnClick.AddClick)
			{
				foreach(DataRow dr in this.dtRole.Rows)
				{
					if(dr["rolename"].ToString().Equals(this.txtRoleName.Text))
					{
						MessageBox.Show("此角色名在数据库中已存在,请输入另外一个角色名","警告");
						this.txtRoleName.Text = "";
						this.txtRoleDescription.Text = "";
						return;
					}
				}
				this.drCurrent["rolename"] = this.txtRoleName.Text;
				this.drCurrent["description"] = this.txtRoleDescription.Text;
			}
			if(this.btnClick == BtnClick.EditClick)
			{
				foreach(DataRow dr in this.dtRole.Rows)
				{
					if(dr["rolename"].ToString().Equals(this.txtRoleName.Text))
					{
						MessageBox.Show("此角色名在数据库中已存在,请输入另外一个角色名","警告");
						this.txtRoleName.Text = "";
						return;
					}
				}
				this.drCurrent["rolename"] = this.txtRoleName.Text;
				this.drCurrent["description"] = this.txtRoleDescription.Text;
			}
			if(this.btnClick == BtnClick.DelClick)
			{
				//设置弹出对话框的模式
				string message = "你真要删除" +"“ "+  this.drCurrent["rolename"].ToString() +" ”"+"这个角色吗? 取消这个操作?";
				string caption = "删除警告                                                                         ";
				MessageBoxButtons buttons = MessageBoxButtons.YesNo;
				DialogResult result;

				//显示对话框
				result = MessageBox.Show(this, message, caption, buttons,
					MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, 
					MessageBoxOptions.RightAlign);
				//确定删除
				if (result == DialogResult.Yes)
				{
					this.drCurrent.Delete();
				}
				
			}
			//事例化业务逻辑类
			RoleBLC roleBlc = new RoleBLC();
			//更新数据源
			roleBlc.UpdateRole(dsRole);
			//清除数据网格已有风格
			DataGridTableStyle existingTableStyle = this.dgRoles.TableStyles[0];
			this.dgRoles.TableStyles.Remove(existingTableStyle); 
			//重新绑定
			MakeBind();
		}

		private void btnAssignUseCase_Click(object sender, System.EventArgs e)
		{
			//给选定角色分配功能
			BindingManagerBase bm;
			bm = this.BindingContext[this.dtRole];
			DataRow dr = this.dtRole.Rows[bm.Position];
			int intRoleId = Convert.ToInt32(dr["roleID"]);
			//new ExamCenter.FormTier.FrmAssignUseCase(intRoleId).Show();
		}

		private void btnDelRole_Click(object sender, System.EventArgs e)
		{
			//删除选定角色
			if(this.dgRoles.VisibleRowCount ==0)
				return;
			this.dgRoles.Enabled = false;
			this.btnClick = BtnClick.DelClick;
			this.btnAddRole.Enabled = false;
			this.btnDelRole.Enabled = false;
			this.btnEdit.Enabled = false;
            //this.btnAssignUseCase.Enabled = false;
			this.btnSave.Enabled = true;

			BindingManagerBase bm;
			bm = this.BindingContext[this.dtRole];
			this.drCurrent = this.dtRole.Rows[bm.Position];
			
		}
		private void lblExit_Click(object sender, System.EventArgs e)
		{
			this.Close();
		}

		private void btnEdit_Click(object sender, System.EventArgs e)
		{
			//编辑角色字段
			if(this.dgRoles.VisibleRowCount ==0)
				return;
			this.dgRoles.Enabled = false;
			this.btnClick = BtnClick.EditClick;
			this.btnAddRole.Enabled = false;
			this.btnDelRole.Enabled = false;
			this.btnEdit.Enabled = false;
            //this.btnAssignUseCase.Enabled = false;
			this.btnSave.Enabled = true;

			BindingManagerBase bm;
			bm = this.BindingContext[this.dtRole];
			this.drCurrent = this.dtRole.Rows[bm.Position];
			this.drCurrent["rolename"] = "";
 
			this.txtRoleName.Enabled = true;
			this.txtRoleDescription.Enabled = true;
		
		}

		private void dgRoles_CurrentCellChanged(object sender, System.EventArgs e)
		{
			DataGridCell myCell;
			myCell = this.dgRoles.CurrentCell;
			DataTable myTable;
			myTable = (DataTable) this.dgRoles.DataSource;

			this.txtRoleDescription.Text = myTable.Rows[myCell.RowNumber]["description"].ToString();
			this.txtRoleName.Text = myTable.Rows[myCell.RowNumber]["rolename"].ToString();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -