📄 formstudentadd.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Collections;
using StudentManager.DbLayer;
namespace StudentManager
{
public partial class FormStudentAdd : Form
{
public FormStudentAdd()
{
InitializeComponent();
}
/// <summary>
/// 查询当前院系、当前年级的学生数据,并绑定到DataGridView中
/// </summary>
void LoadData2dgv()
{
//构造查询SQL
string sql = "";
sql += "select SNo,SName,SAge,SGender,DepartmentName,SEnterYear ";
sql += "from [Student],[Department] where [Department].DepartmentName = ";
sql += SqlStringConstructor.GetQuotedString(comboBoxDepartment.SelectedItem.ToString());
sql += " and [SEnterYear] = ";
sql += SqlStringConstructor.GetQuotedString(comboBoxEnterYear.SelectedItem.ToString());
sql += " and [Student].SDepartmentId = [Department].DepartmentId";
//查询
Database db = new Database();
DataTable dt = db.GetDataTable(sql);
//绑定
this.dataGridViewPreView.DataSource = dt;
//给出预览信息
this.labelDataDesc.Text = "[" + comboBoxDepartment.SelectedItem + "]";
this.labelDataDesc.Text += "(" + comboBoxEnterYear.SelectedItem + ")";
this.labelDataDesc.Text += "共有学生数目:" + dt.Rows.Count;
}
/// <summary>
/// 重新加载当前院系、当前年级的学生信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonPreview_Click(object sender, EventArgs e)
{
this.LoadData2dgv();
}
/// <summary>
/// 初始化窗体中控件的数据
/// </summary>
void InitData()
{
//查询数据表Department中的院系数据,并绑定到“院系”下拉框中
//构造查询SQL
string sql = "";
sql += "select * from [Department]";
//查询
Database db = new Database();
SqlDataReader dr = db.GetDataReader(sql);
//绑定到下拉框中
comboBoxDepartment.Items.Clear();
while (dr.Read())
{
comboBoxDepartment.Items.Add(GetSafeData.ValidateDataReader_S(dr, "DepartmentName"));
}
comboBoxDepartment.SelectedIndex = 0;
//“入学年份”下拉框数据
comboBoxEnterYear.SelectedIndex = 0;
//“性别”按钮
radioButtonMale.Checked = true;
}
/// <summary>
/// 窗体加载事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void FormAddStudents_Load(object sender, EventArgs e)
{
this.InitData();
}
/// <summary>
/// “添加”按钮单击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonAdd_Click(object sender, EventArgs e)
{
//用户输入检查
if (textBoxSNo.Text == "")
{
MessageBox.Show("学号不能为空!");
return;
}
if (textBoxSName.Text == "")
{
MessageBox.Show("姓名不能为空!");
return;
}
string sql = "";
Database db = new Database();
int departmentId = 0;
//从Department表中,检索DepartmentId
sql = "select DepartmentId from [Department] where DepartmentName = ";
sql += SqlStringConstructor.GetQuotedString(comboBoxDepartment.SelectedItem.ToString());
DataRow row = db.GetDataRow(sql);
departmentId = GetSafeData.ValidateDataRow_N(row, "DepartmentId");
//构造Insert语句
sql = "";
sql += "insert into [student](SNo,SName,SAge,SGender,SDepartmentId,SEnterYear) values(";
sql += SqlStringConstructor.GetQuotedString(textBoxSNo.Text) + ",";//学号
sql += SqlStringConstructor.GetQuotedString(textBoxSName.Text) + ",";//姓名
sql += SqlStringConstructor.GetQuotedString(textBoxSAge.Text) + ",";//年龄
//性别
if (radioButtonMale.Checked)
sql += SqlStringConstructor.GetQuotedString(radioButtonMale.Text) + ",";
else
sql += SqlStringConstructor.GetQuotedString(radioButtonFemale.Text) + ",";
sql += departmentId + ",";//院系
sql += SqlStringConstructor.GetQuotedString(comboBoxEnterYear.SelectedItem.ToString()) + ")";//入学年份
db.ExecuteSQL(sql);
this.ResetInput();
}
/// <summary>
/// 重置用户的输入框
/// </summary>
void ResetInput()
{
textBoxSNo.Text = "";
textBoxSName.Text = "";
textBoxSAge.Text = "";
textBoxSNo.Focus();
}
/// <summary>
/// “重置”按钮单击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonReset_Click(object sender, EventArgs e)
{
ResetInput();
}
/// <summary>
/// “关闭”按钮单击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void splitContainer1_Panel1_Paint(object sender, PaintEventArgs e)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -