溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么用C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)

發(fā)布時(shí)間:2021-08-25 17:29:03 來(lái)源:億速云 閱讀:152 作者:chen 欄目:編程語(yǔ)言

這篇文章主要講解了“怎么用C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么用C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)”吧!

一、運(yùn)行環(huán)境windows,使用vs編譯軟件

二、主要功能

登錄、添加學(xué)生信息、修改學(xué)生信息、刪除學(xué)生信息、查詢學(xué)生信息

三、實(shí)現(xiàn)步驟

1、登陸界面功能實(shí)現(xiàn)

老規(guī)矩,先貼下主要代碼:

//構(gòu)造方法 public Login() { InitializeComponent(); this.label3.Parent = this; this.label1.BackColor = Color.Transparent; this.label2.BackColor = Color.Transparent; this.label3.BackColor = Color.Transparent; this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; } //對(duì)登錄按鈕的事件實(shí)現(xiàn)代碼 private void button1_Click(object sender, EventArgs e) { string ss = ConfigurationManager.ConnectionStrings["Stu"].ToString(); SqlConnection conn = new SqlConnection(ss); try { //開(kāi)啟連接  conn.Open();  // MessageBox.Show("數(shù)據(jù)庫(kù)連接成功!");  } catch (Exception) { //MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗!"); }  String uname = txtName.Text.Trim(); string pword = txtPass.Text.Trim(); if(uname == ""|| pword == "") { MessageBox.Show("請(qǐng)輸入用戶名或密碼!"); return; } else { SqlCommand cmd = conn.CreateCommand(); SqlDataAdapter adp = new SqlDataAdapter(); string sql2 = "select * from account where name='"+ uname + " 'and pass='" + pword + " ' "; cmd.CommandText = sql2; adp.SelectCommand = cmd; DataSet dat = new DataSet(); adp.Fill(dat, "account"); if(dat.Tables["account"].Rows.Count == 0) { MessageBox.Show("用戶名或密碼錯(cuò)誤!"); return; } else { Form1.isLogin = true; Form1.username = this.txtName.Text; this.Close(); } cmd.Clone(); } conn.Close();  } //實(shí)現(xiàn)按ESC鍵關(guān)閉該窗口 protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData) { switch (keyData) { case Keys.Escape: this.Close();//esc關(guān)閉窗體 break; } return false; } //重置按鈕清空文本框 private void button2_Click(object sender, EventArgs e) { txtName.Text = ""; txtPass.Text = ""; }  //密碼輸入完成后實(shí)現(xiàn)敲擊enter鍵觸發(fā)登錄按鈕 private void txtPass_KeyDown(object sender, KeyEventArgs e) { if(e.KeyCode == Keys.Enter) { this.button1_Click(sender, e); } } //實(shí)現(xiàn)按enter鍵使焦點(diǎn)轉(zhuǎn)移到下一文本框,與tab鍵通用 private void txtName_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)Keys.Enter) { SendKeys.Send("{tab}"); } }

2、主界面功能實(shí)現(xiàn)

主要代碼如下:

public static bool isLogin = false; int id; SqlConnection conn; SqlCommand cmd; SqlDataAdapter adp; DataSet dat; public static string username { get; set; } public Form1() { InitializeComponent(); this.label1.BackColor = Color.Transparent; this.groupBox1.BackColor = Color.Transparent; this.groupBox2.BackColor = Color.Transparent; this.dataGridView1.BorderStyle = BorderStyle.None; this.dataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;  this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; this.Text += "| 管理員:" + username; string ss = ConfigurationManager.ConnectionStrings["Stu"].ToString(); //建立數(shù)據(jù)庫(kù)連接 conn = new SqlConnection(ss); try { //開(kāi)啟連接  conn.Open(); // MessageBox.Show("數(shù)據(jù)庫(kù)連接成功!");  } catch (Exception) { MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗!"); }  } private void Form1_Load(object sender, EventArgs e) { DataGridViewDataLoad();  //this.stu_dentTableAdapter.Fill(this.students.Stu_dent); } private void DataGridViewDataLoad() { String sql1 = "select * from Stu_dent"; adp = new SqlDataAdapter(sql1,conn); dat = new DataSet(); adp.Fill(dat); dataGridView1.DataSource = dat.Tables[0]; } private void button5_Click(object sender, EventArgs e) { string num = textBox1.Text.Trim(); string name = textBox2.Text.Trim(); String sql4 = "Select * from Stu_dent where 1=1"; if(!String.IsNullOrEmpty(num)) { sql4 += " and StuNum=" + num; } if(!String.IsNullOrEmpty(name)) { sql4 += " and StuName like '%" + name + "%'"; } adp = new SqlDataAdapter(sql4, conn); dat = new DataSet(); adp.Fill(dat); dataGridView1.DataSource = dat.Tables[0];  } protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData) { switch (keyData) { case Keys.Escape: this.Close();//esc關(guān)閉窗體 break; } return false; } private void button1_Click(object sender, EventArgs e) { AddStudent addStudent = new AddStudent(); addStudent.StartPosition = FormStartPosition.CenterScreen; //addStudent.Show(); addStudent.ShowDialog(); DataGridViewDataLoad(); } private void button4_Click(object sender, EventArgs e) { this.Close(); } private void button2_Click(object sender, EventArgs e) { MessageBox.Show("請(qǐng)?jiān)趯W(xué)生信息顯示框中雙擊所要?jiǎng)h除學(xué)生所在的那一行即可!??!","提示"); } private void button3_Click(object sender, EventArgs e) { MessageBox.Show("請(qǐng)?jiān)趯W(xué)生信息顯示框中單擊所要?jiǎng)h修改學(xué)生所在的那一行的任意文字區(qū)域即可!", "提示"); } private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { DialogResult result = MessageBox.Show("確定刪除該學(xué)生信息?", "刪除", MessageBoxButtons.OKCancel); if(result == DialogResult.OK) { id = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[0].Value); Console.WriteLine(id); string sql2 = "delete from Stu_dent where ID=" + id; cmd = new SqlCommand(sql2, conn); cmd.ExecuteNonQuery(); } DataGridViewDataLoad(); } private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { id = Convert.ToInt32(this.dataGridView1.Rows[e.RowIndex].Cells[0].Value); UpdateStudent updatestudent = new UpdateStudent(id); updatestudent.StartPosition = FormStartPosition.CenterScreen; updatestudent.ShowDialog(); DataGridViewDataLoad(); }

3、添加學(xué)生信息功能實(shí)現(xiàn)

主要代碼如下:

public AddStudent() { InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; string ss = ConfigurationManager.ConnectionStrings["Stu"].ToString(); //建立數(shù)據(jù)庫(kù)連接 conn = new SqlConnection(ss); try { //開(kāi)啟連接  conn.Open(); // MessageBox.Show("數(shù)據(jù)庫(kù)連接成功!");  } catch (Exception) { MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗!"); } } private void AddStudent_Load(object sender, EventArgs e) {  } private void label1_Click(object sender, EventArgs e) { } protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData) { switch (keyData) { case Keys.Escape: this.Close();//esc關(guān)閉窗體 break; } return false; } private void button1_Click(object sender, EventArgs e) { string StuNum = textBox1.Text.Trim(); string StuName = textBox2.Text.Trim(); int StuAge; Int32.TryParse(textBox3.Text.Trim(), out StuAge); string StuClass = textBox5.Text.Trim(); string StuPhone = textBox6.Text.Trim(); string StuSex = radioButton1.Checked ? "男" : "女"; if (String.IsNullOrEmpty(StuNum)) { MessageBox.Show("學(xué)號(hào)不能為空!"); } if (String.IsNullOrEmpty(StuName)) { MessageBox.Show("姓名不能為空!"); }  if (String.IsNullOrEmpty(StuClass)) { MessageBox.Show("班級(jí)不能為空!"); } if (String.IsNullOrEmpty(StuPhone)) { MessageBox.Show("聯(lián)系方式不能為空!"); } string sql = string.Format("insert into Stu_dent values ('{0}','{1}','{2}','{3}','{4}','{5}')", StuNum, StuName,StuAge,StuSex, StuClass, StuPhone ); cmd = new SqlCommand(sql, conn); int count = cmd.ExecuteNonQuery(); if (count > 0) { MessageBox.Show("添加成功!"); } else { MessageBox.Show("添加失敗!"); } this.Close(); }

4、刪除學(xué)生信息功能實(shí)現(xiàn)

在這里采用雙擊所要?jiǎng)h除學(xué)生所在的那一行的任意位置即可

主要代碼如下:

private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { DialogResult result = MessageBox.Show("確定刪除該學(xué)生信息?", "刪除", MessageBoxButtons.OKCancel); if(result == DialogResult.OK) { id = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells[0].Value); Console.WriteLine(id); string sql2 = "delete from Stu_dent where ID=" + id; cmd = new SqlCommand(sql2, conn); cmd.ExecuteNonQuery(); } DataGridViewDataLoad(); }

5、修改學(xué)生信息功能實(shí)現(xiàn)

在這里采用單擊所要修改學(xué)生所在行任意文字處即可

主要代碼如下:

public UpdateStudent(int id) { this.id = id; string ss = ConfigurationManager.ConnectionStrings["Stu"].ToString(); conn = new SqlConnection(ss); try { //開(kāi)啟連接  conn.Open(); // MessageBox.Show("數(shù)據(jù)庫(kù)連接成功!");  } catch (Exception) { MessageBox.Show("數(shù)據(jù)庫(kù)連接失敗!"); } InitializeComponent(); this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; } protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData) { switch (keyData) { case Keys.Escape: this.Close();//esc關(guān)閉窗體 break; } return false; } private void UpdateStudent_Load(object sender, EventArgs e) { cmd = conn.CreateCommand(); string sql1 = "select * from Stu_dent where ID=" + id; cmd.CommandText = sql1; reader = cmd.ExecuteReader(); if(reader.HasRows) { reader.Read(); textBox1.Text = reader.GetString(1); textBox2.Text = reader.GetString(2); textBox3.Text = reader.GetInt32(3).ToString(); if(reader.GetString(4) == "男") { this.radioButton2.Checked = true; } else { this.radioButton1.Checked = true; } textBox5.Text = reader.GetString(5); textBox6.Text = reader.GetString(6); } reader.Close();  } private void button1_Click(object sender, EventArgs e) { string StuNum = textBox1.Text.Trim(); string StuName = textBox2.Text.Trim(); int StuAge; Int32.TryParse(textBox3.Text.Trim(), out StuAge); string StuClass = textBox5.Text.Trim(); string StuPhone = textBox6.Text.Trim(); string StuSex = radioButton1.Checked ? "男" : "女"; if (String.IsNullOrEmpty(StuName)) { MessageBox.Show("姓名不能為空!"); } if (String.IsNullOrEmpty(StuClass)) { MessageBox.Show("班級(jí)不能為空!"); } if (String.IsNullOrEmpty(StuPhone)) { MessageBox.Show("聯(lián)系方式不能為空!"); } string sql = string.Format("update Stu_dent set StuName='{0}',StuAge={1},StuSex='{2}',StuClass='{3}',StuPhone='{4}' where StuNum='{5}'", StuName, StuAge, StuSex, StuClass, StuPhone, StuNum); cmd = new SqlCommand(sql, conn); int count = cmd.ExecuteNonQuery(); if (count > 0) { MessageBox.Show("修改成功!"); } else { MessageBox.Show("修改失??!"); } this.Close(); } private void button2_Click(object sender, EventArgs e) { cmd = conn.CreateCommand(); string sql1 = "select * from Stu_dent where ID=" + id; cmd.CommandText = sql1; reader = cmd.ExecuteReader(); if (reader.HasRows) { reader.Read(); textBox1.Text = reader.GetString(1); textBox2.Text = reader.GetString(2); textBox3.Text = reader.GetInt32(3).ToString(); if (reader.GetString(4) == "男") { this.radioButton2.Checked = true; } else { this.radioButton1.Checked = true; } textBox5.Text = reader.GetString(5); textBox6.Text = reader.GetString(6); } reader.Close(); }

(在這里將郭某某的專業(yè)班級(jí)為例)

6、查詢學(xué)生信息功能實(shí)現(xiàn)

查詢功能就寫了兩種查詢方式

主要代碼如下:

private void button5_Click(object sender, EventArgs e) { string num = textBox1.Text.Trim(); string name = textBox2.Text.Trim(); String sql4 = "Select * from Stu_dent where 1=1"; if(!String.IsNullOrEmpty(num)) { sql4 += " and StuNum=" + num; } if(!String.IsNullOrEmpty(name)) { sql4 += " and StuName like '%" + name + "%'"; } adp = new SqlDataAdapter(sql4, conn); dat = new DataSet(); adp.Fill(dat); dataGridView1.DataSource = dat.Tables[0];  }

感謝各位的閱讀,以上就是“怎么用C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么用C#實(shí)現(xiàn)簡(jiǎn)單學(xué)生信息管理系統(tǒng)這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI