teachereditform.cs
来自「一个不错的文档」· CS 代码 · 共 217 行
CS
217 行
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using MySchoolPrj.Entity;
using MySchoolPrj.DAO;
using System.Data.SqlClient;
using System.Collections;
namespace MySchoolPrj.TeacherInfo
{
public partial class TeacherEditForm : Form
{
private State state;
public State State
{
get { return state; }
set { state = value; }
}
private Teacher tea;
public Teacher Tea
{
get { return tea; }
set { tea = value; }
}
public TeacherEditForm()
{
InitializeComponent();
}
//增加教师信息
public void addTea(Teacher t)
{
try
{
DBHelper.con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = DBHelper.con;
cmd.CommandType = CommandType.Text;
string sql = string.Format("insert into teacher values('{0}','{1}','{2}','{3}')",
t.TeacherNo, t.TeacherName, t.TeacherTel, t.Memo);
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
}
catch (Exception)
{
MessageBox.Show("编号不能重复");
}
finally
{
DBHelper.con.Close();
}
}
//获取界面数据
public Teacher getInteface()
{
Teacher t = new Teacher();
t.TeacherNo = txtTeacherID.Text;
t.TeacherName = txtTeacherName.Text;
t.TeacherTel = txtTeacherPhone.Text;
t.Memo = txtMemo.Text;
return t;
}
//把对象的数据显示到界面
public void showData()
{
txtTeacherID.Text = tea.TeacherNo;
txtTeacherName.Text = tea.TeacherName;
txtTeacherPhone.Text = tea.TeacherTel + "";
txtMemo.Text = tea.Memo;
}
//修改教师信息
public void UpdateTea(Teacher t)
{
try
{
DBHelper.con.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = DBHelper.con;
cmd.CommandType = CommandType.Text;
string sql = string.Format("update teacher set teacherId='{0}',teacherName='{1}'," +
" teacherTel={2},Memo='{3}'where teacherId='{4}'", t.TeacherNo, t.TeacherName, t.TeacherTel, t.Memo, tea.TeacherNo);
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
DBHelper.con.Close();
}
}
//界面初始化信息
private void TeacherEditForm_Load(object sender, EventArgs e)
{
if (state == State.dsUpdate)
{
txtTeacherID.ReadOnly = true;
showData();
}
else
{
autoCreateTeacherId();
}
}
//提交信息
private void btnSave_Click(object sender, EventArgs e)
{
if (state == State.dsAdd)
{
if (validateTeacherIdIsNull())
{
addTea(getInteface());
}
else {
return;
}
}
else
{
if (validateTeacherIdIsNull())
{
UpdateTea(getInteface());
}
else {
return;
}
}
this.Close();
}
//关闭窗体
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
//自动产生未使用的编号
ArrayList arraytid = new ArrayList();
public void autoCreateTeacherId()
{
//数据库链接
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = DBHelper.con;
string sql = "select teacherId from teacher";
cmd.CommandText = sql;
DBHelper.con.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read()) {
arraytid.Add(dr[0]);
}
dr.Close();
DBHelper.con.Close();
//自动生成教师编号
for (int i = 0; i < arraytid.Count; i++) {
if (i == arraytid.Count - 1) {
string temp = arraytid[i].ToString();
int a=Convert.ToInt32(temp.Substring(1))+1;
if(a<10)
txtTeacherID.Text="T00"+a;
else if(a<100)
txtTeacherID.Text="T0"+a;
else
txtTeacherID.Text="T"+a;
}
else {
string temp =arraytid[i].ToString();
int a=Convert.ToInt32(temp.Substring(1))+1;
int b = Convert.ToInt32(arraytid[i+1].ToString().Substring(1));
if(a!=b){
if(a<10)
txtTeacherID.Text="T00"+a;
else if(a<100)
txtTeacherID.Text="T0"+a;
else
txtTeacherID.Text="T"+a;
}
}
}
}
//验证教师号和教师名不能为空
public bool validateTeacherIdIsNull() {
if (txtTeacherID.Text == "") {
MessageBox.Show("教师号不能为空");
return false;
}
else if (txtTeacherName.Text == "")
{
MessageBox.Show("教师名不能为空");
return false;
}
else {
return true;
}
}
//设置电话只能为数字
private void txtTeacherPhone_KeyPress(object sender, KeyPressEventArgs e)
{
char ch = e.KeyChar;
if ((Keys)ch != Keys.Back)
{
if (ch < '0' || ch > '9')
e.Handled = true;
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?