📄 frmteacherinfoselect.cs
字号:
else if(Mteacher != null)
{
return Mteacher;
}
else
{
return Pteacher;
}
}
}
//订阅“邮递员”
private void Post_EventSendLoginedID(object obj, object teacher, string formName)
{
if(teacher.GetType().ToString().Equals("BusinessRule.AdminTeacher"))
{
this.Ateacher = (AdminTeacher)teacher;
}
else if(teacher.GetType().ToString().Equals("BusinessRule.MasterTeacher"))
{
this.Mteacher = (MasterTeacher)teacher;
}
else
{
this.Pteacher = (PrelectTeacher)teacher;
}
Post.EventSendLoginedID -= new DataAccess.Post.SendMsgDelegate(Post_EventSendLoginedID);
}
//窗体加载事件
private void frmTeacherInfoSelect_Load(object sender, System.EventArgs e)
{
SqlDataReader myRd;
string select;
//初始化“教师编号”组合框
cboTeaID.Items.Add("全部教师");
myRd = this.User.GetAllTeaID();
while(myRd.Read())
{
cboTeaID.Items.Add(myRd[0].ToString());
}
//初始化“教师姓名”组合框
cboTeaName.Items.Add("全部教师");
myRd = this.User.GetAllTeaName();
while(myRd.Read())
{
cboTeaName.Items.Add(myRd[0].ToString());
}
//初始化“班级编号”组合框
cboClaID.Items.Add("全部教师");
myRd = this.User.GetAllClaID();
while(myRd.Read())
{
cboClaID.Items.Add(myRd[0].ToString());
}
//指定DataGrid控件快捷菜单
dbgTeacherInfo.ContextMenu = mnuCon;
}
//查询
private void btnSelect_Click(object sender, System.EventArgs e)
{
if(this.radTeaID.Checked)
{
string teaID = this.cboTeaID.Text.Trim();
if(teaID.Equals(""))
{
MessageBox.Show("请输入教师编号","查询条件为空",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
else if(cboTeaID.Text.Trim().Equals("全部教师"))
{
myDt = this.User.GetAllTeaInfo();
}
else
{
myDt = this.User.GetTeaInfoByTeaID(int.Parse(teaID));
}
}
else if(this.radTeaName.Checked)
{
string teaName = this.cboTeaName.Text.Trim();
if(teaName.Equals(""))
{
MessageBox.Show("请输入教师姓名","查询条件为空",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
else if(cboTeaName.Text.Trim().Equals("全部教师"))
{
myDt = this.User.GetAllTeaInfo();
}
else
{
myDt = this.User.GetTeaInfoByTeaName(teaName);
}
}
else if(this.radClaID.Checked)
{
string claID = this.cboClaID.Text.Trim();
if(claID.Equals(""))
{
MessageBox.Show("请输入班级编号","查询条件为空",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
else if(cboClaID.Text.Trim().Equals("全部教师"))
{
myDt = this.User.GetAllTeaInfo();
}
else
{
myDt = this.User.GetTeaInfoByClaID(claID);
}
}
else
{
string course = txtCourse.Text.Trim();
if(course.Equals(""))
{
MessageBox.Show("请输入班级编号","查询条件为空",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
else
{
myDt = this.User.GetTeaInfoByTeaCourse(course);
}
}
myDt.TableName = "TeacherInfo";
if(myDt.Rows.Count == 0)
{
MessageBox.Show("抱歉,没有找到相关记录","查询结果",MessageBoxButtons.OK,MessageBoxIcon.Information);
btnUpdate.Enabled = false;
}
else
{
btnUpdate.Enabled = true;
}
dbgTeacherInfo.DataSource = myDt;
jimmy.CreateTeacherInfoStyle(dbgTeacherInfo,myDt.TableName);
dbgTeacherInfo.CaptionText = "教师基本信息 共搜索到 " + myDt.Rows.Count.ToString() + " 条记录";
first = 1;
}
//更新窗体的方法
private void refreshForm()
{
}
//退出
private void btnExit_Click(object sender, System.EventArgs e)
{
this.Close();
}
#region 单击单选按钮,调整相应控件可用性
//教师编号
private void radTeaID_CheckedChanged(object sender, System.EventArgs e)
{
cboTeaID.Enabled = true;
cboTeaName.Enabled = false;
cboClaID.Enabled = false;
txtCourse.Enabled = false;
}
//教师姓名
private void radTeaName_CheckedChanged(object sender, System.EventArgs e)
{
cboTeaID.Enabled = false;
cboTeaName.Enabled = true;
cboClaID.Enabled = false;
txtCourse.Enabled = false;
}
//班级编号
private void radClaID_CheckedChanged(object sender, System.EventArgs e)
{
cboTeaID.Enabled = false;
cboTeaName.Enabled = false;
cboClaID.Enabled = true;
txtCourse.Enabled = false;
}
//所受课程
private void radCourse_CheckedChanged(object sender, System.EventArgs e)
{
cboTeaID.Enabled = false;
cboTeaName.Enabled = false;
cboClaID.Enabled = false;
txtCourse.Enabled = true;
}
#endregion
#region 所有查询条件的编辑控件,均支持直接回车进行查询
//教师编号
private void cboTeaID_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13 )
{
btnSelect_Click(sender,e);
}
}
//教师姓名
private void cboTeaName_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13 )
{
btnSelect_Click(sender,e);
}
}
//班级编号
private void cboClaID_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13 )
{
btnSelect_Click(sender,e);
}
}
//所授课程
private void txtCourse_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar == (char)13 )
{
btnSelect_Click(sender,e);
}
}
#endregion
#region 右键快捷菜单控制
//右键快捷菜单控制,确定鼠标点击位置
private void dbgTeacherInfo_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
pointDbgTeacherInfo = new Point(e.X,e.Y);
if(e.Button == MouseButtons.Right)
{
//如果未从数据库中读取信息,则菜单“搜索”、“关闭”项不可用
if(dbgTeacherInfo.DataSource == null)
{
mnuCon.MenuItems[2].Enabled = false;
mnuCon.MenuItems[3].Enabled = false;
return;
}
DataGrid myGrid = (DataGrid)sender;
DataGrid.HitTestInfo hti;
hti = myGrid.HitTest(pointDbgTeacherInfo);
switch(hti.Type)
{
//以下只可以进行通用操作
case DataGrid.HitTestType.None: //选中背景
case DataGrid.HitTestType.ColumnHeader: //选中列标题
case DataGrid.HitTestType.Caption: //选中控件标题框
mnuCon.MenuItems[2].Enabled = false;
mnuCon.MenuItems[3].Enabled = false;
break;
//以下菜单可以操作所有项
case DataGrid.HitTestType.Cell: //选中单元格
case DataGrid.HitTestType.RowHeader: //选中行标题
for(int i = 0;i<mnuCon.MenuItems.Count;i++)
{
mnuCon.MenuItems[i].Enabled = true;
}
//取消当前所选中的行的选定
dbgTeacherInfo.UnSelect(dbgTeacherInfo.CurrentRowIndex);
//确定当前操作的行
dbgTeacherInfo.CurrentCell = new DataGridCell(hti.Row,hti.Column);
//设置指定行的选定
dbgTeacherInfo.Select(hti.Row);
break;
}
}
}
//搜索教师信息菜单
private void mnuConSelect_Click(object sender, System.EventArgs e)
{
btnSelect_Click(sender,e);
}
//查看教师图片菜单
private void mnuConTeaPicture_Click(object sender, System.EventArgs e)
{
btnPicture_Click(sender,e);
}
//修改教师信息菜单
private void mnuConChance_Click(object sender, System.EventArgs e)
{
btnUpdate_Click(sender,e);
}
//新建教师信息菜单
private void mnuConNewTeacher_Click(object sender, System.EventArgs e)
{
btnAdd_Click(sender,e);
}
//关闭菜单
private void mnuConClose_Click(object sender, System.EventArgs e)
{
this.Close();
}
#endregion
//双击行标题支持直接进入修改教师信息页面
private void dbgTeacherInfo_DoubleClick(object sender, System.EventArgs e)
{
DataGrid myGrid = (DataGrid)sender;
DataGrid.HitTestInfo hti;
hti = myGrid.HitTest(pointDbgTeacherInfo);
if(hti.Type == DataGrid.HitTestType.RowHeader)
{
btnUpdate_Click(sender,e);
}
}
//修改教师信息按键
private void btnUpdate_Click(object sender, System.EventArgs e)
{
frmTeacherInfo myTeaInfo = new frmTeacherInfo();
Post.DoSendLoginedID(myDt.Rows[dbgTeacherInfo.CurrentRowIndex]["teaID"],this.User,"frmTeacherInfoSelect");
myTeaInfo.MdiParent = this.MdiParent;
myTeaInfo.Show();
}
//添加教师信息按键
private void btnAdd_Click(object sender, System.EventArgs e)
{
frmTeacherInfo TeacherInfo = new frmTeacherInfo();
Post.DoSendLoginedID(10000,this.User,"frmTeacherInfoSelect");
TeacherInfo.MdiParent = this.ParentForm;
TeacherInfo.Show();
}
//查看教师图片按键
private void btnPicture_Click(object sender, System.EventArgs e)
{
frmPicture Picture = new frmPicture();
Post.DoSendLoginedID(myDt.Rows[dbgTeacherInfo.CurrentRowIndex]["teaID"],this.User,"frmTeacherInfoSelect");
Picture.MdiParent = this.ParentForm;
Picture.Show();
}
//更新显示信息
private void frmTeacherInfoSelect_Activated(object sender, System.EventArgs e)
{
if(first == 1)
{
btnSelect_Click(sender,e);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -