studentinfolistform.cs

来自「一个不错的文档」· CS 代码 · 共 295 行

CS
295
字号
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using MySchoolPrj.DAO;
using System.Data.SqlClient;
using MySchoolPrj.Entity;

namespace MySchoolPrj.MainForm
{
    public partial class StudentInfoListForm : Form
    {
        
        public StudentInfoListForm()
        {
            InitializeComponent();
        }
        //加载程序
        private void StudentInfoListForm_Load(object sender, EventArgs e)
        {
            if(UserHelper.grade.Equals(1))
            {
                getSingleStu();
                gupSearch.Enabled = false;
                btnAdd.Enabled = false;
                btnDel.Enabled = false;
            }
            else
            {
                getStu();
            }
            
            initDg();
            setCmbcondition();
        }

        //获取所有学生信息
        public void getStu()
        {
            try
            {
                DBHelper.con.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = DBHelper.con;
                cmd.CommandType = CommandType.Text;
                string sql = string.Format("select * from student");
                cmd.CommandText = sql;

                SqlDataAdapter dap = new SqlDataAdapter();
                dap.SelectCommand = cmd;
                DataTable dt = new DataTable();
                dap.Fill(dt);
                dgvTeacherInfo.DataSource = dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                DBHelper.con.Close();
            }
        }

        //获取单个学生信息
        public void getSingleStu()
        {
            try
            {

                DBHelper.con.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = DBHelper.con;
                cmd.CommandType = CommandType.Text;
                string sql = string.Format("select * from student where stuId = '{0}'", UserHelper.loginId);
                cmd.CommandText = sql;

                SqlDataAdapter dap = new SqlDataAdapter();
                dap.SelectCommand = cmd;
                DataTable dt = new DataTable();
                dap.Fill(dt);
                dgvTeacherInfo.DataSource = dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                DBHelper.con.Close();
            }
        }


        //初始化DataGridView的显示
        public void initDg()
        {
            dgvTeacherInfo.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            dgvTeacherInfo.RowHeadersVisible = false;
            dgvTeacherInfo.AllowUserToAddRows = false;
            dgvTeacherInfo.ReadOnly = true;
            dgvTeacherInfo.MultiSelect = false;
            for (int i = 0; i < dgvTeacherInfo.Columns.Count; i++)
            {
                dgvTeacherInfo.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable;
                string headerText = dgvTeacherInfo.Columns[i].HeaderText;
                switch (headerText)
                {
                    case "stuId":
                        dgvTeacherInfo.Columns[i].HeaderText = "学号";
                        dgvTeacherInfo.Columns[i].Width = 60;
                        break;
                    case "stuName":
                        dgvTeacherInfo.Columns[i].HeaderText = "姓名";
                        dgvTeacherInfo.Columns[i].Width = 60;
                        break;
                    case "stuSex":
                        dgvTeacherInfo.Columns[i].HeaderText = "性别";
                        dgvTeacherInfo.Columns[i].Width = 40;
                        break;
                    case "stuBirthday":
                        dgvTeacherInfo.Columns[i].HeaderText = "生日";
                        dgvTeacherInfo.Columns[i].Width = 80;
                        break;
                    case "classId":
                        dgvTeacherInfo.Columns[i].HeaderText = "班级编号";
                        dgvTeacherInfo.Columns[i].Width = 80;
                        break;
                    case "stuPhone":
                        dgvTeacherInfo.Columns[i].HeaderText = "联系电话";
                        dgvTeacherInfo.Columns[i].Width = 80;
                        break;
                    case "stuInDate":
                        dgvTeacherInfo.Columns[i].HeaderText = "入校日期";
                        dgvTeacherInfo.Columns[i].Width = 100;
                        break;
                    case "stuAddress":
                        dgvTeacherInfo.Columns[i].HeaderText = "家庭地址";
                        dgvTeacherInfo.Columns[i].Width = 100;
                        break;
                    case "Memo":
                        dgvTeacherInfo.Columns[i].HeaderText = "备注";
                        dgvTeacherInfo.Columns[i].Width = 160;
                        break;
                }
            }

        }

        //初始化查询条件下拉框
        public void setCmbcondition()
        {
            cmbCondition.Items.Add("所有信息");
            cmbCondition.Items.Add("学号");
            cmbCondition.Items.Add("姓名");
            cmbCondition.Items.Add("班级编号");
            cmbCondition.DropDownStyle = ComboBoxStyle.DropDownList;
            cmbCondition.SelectedIndex = 0;
        }

        //删除学生信息
        public void delStu(string stuID)
        {
            try
            {
                DBHelper.con.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = DBHelper.con;
                cmd.CommandType = CommandType.Text;
                string sql = string.Format("delete from student where stuID='{0}'", stuID);
                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                DBHelper.con.Close();
            }
        }

        //增加按钮
        private void btnAdd_Click(object sender, EventArgs e)
        {
            int curRow=0;
            StudentEditForm addForm = new StudentEditForm();
            addForm.ShowDialog();
            if (dgvTeacherInfo.Rows.Count > 0)
            {
                curRow = dgvTeacherInfo.CurrentRow.Index;           //获取当前索引
            }
                getStu();                                               //刷新界面
            dgvTeacherInfo.Rows[curRow].Selected = true;
        }

        //删除按钮
        private void btnDel_Click(object sender, EventArgs e)
        {
            DialogResult res = MessageBox.Show("你确定删除么?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Warning);
            if (res == DialogResult.Cancel)
                return;
            int curRow = dgvTeacherInfo.CurrentRow.Index;
            DataTable dt = (DataTable)dgvTeacherInfo.DataSource;
            string stuID = dt.Rows[curRow]["stuID"].ToString();
            delStu(stuID);
            getStu();
        }

        //查找按钮
        private void btnSearch_Click(object sender, EventArgs e)
        {
            try
            {
                DBHelper.con.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = DBHelper.con;
                cmd.CommandType = CommandType.Text;
                string sql = string.Format("select * from student");
                string conditon = cmbCondition.SelectedItem.ToString();
                if (conditon == "学号")
                    sql += " where stuID like '%"+txtCondition.Text+"%'";
                else if (conditon == "姓名")
                    sql += " where stuName like '%" + txtCondition.Text + "%'";
                else if (conditon == "班级编号")
                    sql += " where classID like '%" + txtCondition.Text + "%'";
                cmd.CommandText = sql;

                SqlDataAdapter dap = new SqlDataAdapter();
                dap.SelectCommand = cmd;
                DataTable dt = new DataTable();
                dap.Fill(dt);
                dgvTeacherInfo.DataSource = dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                DBHelper.con.Close();
            }
        }

        //修改按钮
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            StudentEditForm addfrm = new StudentEditForm();
            if (dgvTeacherInfo.Rows.Count < 1)
            {
                MessageBox.Show("对不起,没有您的数据信息");
                return;
            }
            else
            {
                int curRow = dgvTeacherInfo.CurrentRow.Index;
                DataTable dt = (DataTable)dgvTeacherInfo.DataSource;

                Student temp = new Student();
                temp.StuID = dt.Rows[curRow]["stuID"].ToString();
                temp.StuName = dt.Rows[curRow]["stuName"].ToString();
                temp.StuSex = dt.Rows[curRow]["stuSex"].ToString();
                temp.StuBirthday = Convert.ToDateTime(dt.Rows[curRow]["stuBirthday"]);
                temp.ClassID = dt.Rows[curRow]["classID"].ToString();
                temp.StuPhone = dt.Rows[curRow]["stuPhone"].ToString();
                temp.StuInDate = dt.Rows[curRow]["stuInDate"].ToString();
                temp.StuAddress = dt.Rows[curRow]["stuAddress"].ToString();
                temp.Memo = dt.Rows[curRow]["Memo"].ToString();

                addfrm.State = State.dsUpdate;
                addfrm.Stu = temp;
                addfrm.ShowDialog();

                if (UserHelper.grade.Equals(1))
                {
                    getSingleStu();
                }
                else
                {
                    getStu();
                }
            }
        }

        //关闭
        private void btnClose_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

⌨️ 快捷键说明

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