?? frmkdmanage.cs
字號:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace ExamCenter.FormTier
{
public partial class FrmKdManage : System.Windows.Forms.Form
{
private System.Windows.Forms.DataGrid dgUsers;
/// <summary>
/// 必需的設計器變量。
/// </summary>
private System.ComponentModel.Container components = null;
//用戶數據集
private DataSet dsUser;
private DataTable dtUser;
private enum BtnClick { AddClick, DelClick, EditClick, SaveClick };
private BtnClick btnClick = BtnClick.SaveClick;
private DataRow drCurrent;
public FrmKdManage()
{
InitializeComponent();
MakeBind();
}
protected override void Dispose(bool disposing)
{
if (disposing)
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose(disposing);
}
private void groupBox2_Enter(object sender, EventArgs e)
{
}
private void FrmKdManage_Load(object sender, EventArgs e)
{
}
private void MakeBind()
{
//方法:private void MakeBind()
//參數:空
//功能:1.返回所有的用戶數據集dsUser
// 2.將窗體的dgUsers與返回的數據集dsUser綁定
// 3.給滾動條UserScroller的屬性DtSet賦值
//返回:空
//事例化業務邏輯類
UserBLC userBlc = new UserBLC();
//以數據集的形式返回用戶表
this.dsUser = userBlc.GetAllUser();
this.dtUser = this.dsUser.Tables[0];
//將窗體數據網格dgUsers與用戶表綁定
this.dgUsers.DataSource = this.dtUser;
//給角色表臨時添加一編號列
DataColumn dcCurrent = new DataColumn("Current", typeof(int));
this.dtUser.Columns.Add(dcCurrent);
//給角色表編號列賦值
int count = 1;
foreach (DataRow row in this.dtUser.Rows)
{
row["Current"] = count++;
}
//設置窗體數據網格表現風格
DataGridTableStyle dgStyle = new DataGridTableStyle();
dgStyle.MappingName = this.dsUser.Tables[0].TableName;
DataGridColumnStyle intCount =
new DataGridTextBoxColumn();
intCount.MappingName = "Current";
intCount.HeaderText = " 用戶編號";
intCount.Width = 75;
dgStyle.GridColumnStyles.Add(intCount);
DataGridColumnStyle ename = new DataGridTextBoxColumn();
ename.MappingName = "userename";
ename.HeaderText = " 用戶英文名";
ename.Width = 105;
dgStyle.GridColumnStyles.Add(ename);
DataGridColumnStyle cname = new DataGridTextBoxColumn();
cname.MappingName = "usercname";
cname.HeaderText = " 用戶中文名";
cname.Width = 105;
dgStyle.GridColumnStyles.Add(cname);
DataGridColumnStyle password = new DataGridTextBoxColumn();
password.MappingName = "password";
password.HeaderText = " 密碼";
password.Width = 163;
dgStyle.GridColumnStyles.Add(password);
this.dgUsers.TableStyles.Add(dgStyle);
this.txtPassword.Enabled = false;
this.txtUserCname.Enabled = false;
this.txtUserEname.Enabled = false;
this.btnAddUser.Enabled = true;
this.btnDelUser.Enabled = true;
this.btnEdit.Enabled = true;
//this.btnAssignRole.Enabled = true;
this.btnSave.Enabled = false;
this.btnClick = BtnClick.SaveClick;
//默認顯示第一行
if (this.dtUser.Rows.Count > 0)
{
this.txtPassword.Text = this.dtUser.Rows[0]["password"].ToString();
this.txtUserCname.Text = this.dtUser.Rows[0]["usercname"].ToString();
this.txtUserEname.Text = this.dtUser.Rows[0]["userename"].ToString();
}
this.dgUsers.Enabled = true;
}
private void lblExit_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnAddKd_Click(object sender, EventArgs e)
{
this.dgUsers.Enabled = false;
//添加用戶
this.btnClick = BtnClick.AddClick;
this.btnAddUser.Enabled = false;
this.btnDelUser.Enabled = false;
this.btnEdit.Enabled = false;
//this.btnAssignRole.Enabled = false;
this.btnSave.Enabled = true;
this.drCurrent = this.dtUser.NewRow();
this.drCurrent["password"] = "";
this.drCurrent["usercname"] = "";
this.drCurrent["userename"] = "";
this.dtUser.Rows.Add(this.drCurrent);
this.txtPassword.Text = "";
this.txtUserCname.Text = "";
this.txtUserEname.Text = "";
this.txtPassword.Enabled = true;
this.txtUserCname.Enabled = true;
this.txtUserEname.Enabled = true;
this.dgUsers.Refresh();
}
private void btnEditKd_Click(object sender, EventArgs e)
{
//編輯用戶
if (this.dgUsers.VisibleRowCount == 0)
return;
this.dgUsers.Enabled = false;
this.btnClick = BtnClick.EditClick;
this.btnAddUser.Enabled = false;
this.btnDelUser.Enabled = false;
this.btnEdit.Enabled = false;
//this.btnAssignRole.Enabled = false;
this.btnSave.Enabled = true;
BindingManagerBase bm;
bm = this.BindingContext[this.dtUser];
this.drCurrent = this.dtUser.Rows[bm.Position];
this.drCurrent["userename"] = "";
// this.txtPassword.Enabled = true;
this.txtUserCname.Enabled = true;
this.txtUserEname.Enabled = true;
}
private void btnDelKd_Click(object sender, EventArgs e)
{
if (this.dgUsers.VisibleRowCount == 0)
return;
this.dgUsers.Enabled = false;
this.btnClick = BtnClick.DelClick;
this.btnAddUser.Enabled = false;
this.btnDelUser.Enabled = false;
this.btnEdit.Enabled = false;
//this.btnAssignRole.Enabled = false;
this.btnSave.Enabled = true;
BindingManagerBase bm;
bm = this.BindingContext[this.dtUser];
this.drCurrent = this.dtUser.Rows[bm.Position];
}
private void btnSaveKd_Click(object sender, EventArgs e)
{
if (this.btnClick == BtnClick.AddClick)
{
foreach (DataRow dr in this.dtUser.Rows)
{
if (dr["userename"].ToString().Equals(this.txtUserEname.Text))
{
MessageBox.Show("此用戶英文名在數據庫中已存在,請輸入另外一個英文名", "警告");
this.txtUserEname.Text = "";
this.txtUserCname.Text = "";
this.txtPassword.Text = "";
return;
}
}
this.drCurrent["password"] = new UserBLC().EncryptPassword(this.txtPassword.Text);
this.drCurrent["usercname"] = this.txtUserCname.Text;
this.drCurrent["userename"] = this.txtUserEname.Text;
}
if (this.btnClick == BtnClick.EditClick)
{
foreach (DataRow dr in this.dtUser.Rows)
{
if (dr["userename"].ToString().Equals(this.txtUserEname.Text))
{
MessageBox.Show("此用戶英文名在數據庫中已存在,請輸入另外一個英文名", "警告");
this.txtUserEname.Text = "";
return;
}
}
this.drCurrent["usercname"] = this.txtUserCname.Text;
this.drCurrent["userename"] = this.txtUserEname.Text;
}
if (this.btnClick == BtnClick.DelClick)
{
//設置彈出對話框的模式
string message = "你真要刪除" + "“ " + this.drCurrent["usercname"].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();
}
}
//更新數據源
UserBLC userBlc = new UserBLC();
userBlc.UpdateUser(this.dsUser);
//清除存在的數據網格風格
DataGridTableStyle existingTableStyle = this.dgUsers.TableStyles[0];
this.dgUsers.TableStyles.Remove(existingTableStyle);
//重新綁定
MakeBind();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -