的功能是用于存储各菜单项下的所有信息,并通过该对象的DropDownItem属性获取各子菜单项的名称。其窗体如图5-2所示:
图5-2 主窗体
其实现的重点代码如下:
String MySQLConnectionString = globl::MyPersonnel.Properties.Settings.Defult.MyPersonnelConnectionString;
string MySQL = "Select * From 公司信息";
SqlConnection MyConnection = new SqlConnection(MySQLConnectionString);
MyConnection.Open();
DtTble MyTble = new DtTble();
SqlDtdpter Mydpter = new SqlDtdpter(MySQL, MyConnection);
Mydpter.Fill(MyTble);
MyBgPhoto = ppliction.StrtupPth + "\\Dt\\" + (String)MyTble.Rows[0]["管理系统背景照片"];
5.3系统人事基本档案及相关模块的实现
人事基本档案及相关模块用来对员工的基本档案、家庭信息、工作简历、奖惩记录、培训记录、离职记录等进行添加、修改、删除的操作。为了更好的进行查询操作,本界面设计了模糊查询的功能[8]。人事基本档案窗体运行结果图如图5-3所示:
图5-3 人事基本档案管理窗体
本窗体通过在BindingNvigtor中添加相应的Button控件和Label控件。首先,来看本窗体查询功能的实现。在连接成功数据库后,用户单击查询Button的按钮,响应其click事件,通过ToolStripTextBox.Text方法,获取文本框中的信息并与This. MyPer sonnelDtSet.基本档案中的信息进行比较,若有相似信息,则在添加到页面的数据库
DataGridView控件中显示相关信息。若遇到异常情况,则通过Messgebox.show("系统异常,请联系管理员")来提示用户中止操作,以防治数据的丢失。其次,本窗体的添加功能实现。用户在单击添加按钮时,在自编号的Label中实现了一个自动获取编号的功能。在定义的变量MyLength中通过MyLength = MyID.ToString().Length获取字段的长度,进而通过Switch()语句来控制自编号的位数。自编号获取成功后,用户添加相应的信息至文本框,随后调用保存按钮的click事件,在保存的click事件中,先进行了一个判断操作If(combox.text=="")则Messgebox.show("**文本框为空,请核对后再执行保存操作"),此判断操作结束后,执行"this.基本档案Tbledpter. Updte (this.myPersonnelDtSet.基本档案)"语句,将添加后的数据进行数据保存。再次,本窗体的修改功能与添加功能类似,只是将自动获取自编号的相应代码取消,其与查询功能联合使用,当用户查询出相关的信息后,进行修改仍执行updte语句,然后单击保存按钮后进行保存[9]。最后,是基本档案窗体的删除功能实现,在删除功能中首先做的仍是数据库的连接,数据库连接成功后,通过text进行删除,其相应执行代码为MyCommnd.CommndText = "delete * From 基本档案 where =@;
具体实现的重点代码如下:
try
{
this.基本档案Tbledpter.FillByll(this.myPersonnelDtSet.基本档案, ddPercent(ToolStripTextBox.Text), ddPercent(性别àetoolStripComboBox.SelectedItem), ddPercent( 部门toolStripComboBox.SelectedItem), ddPercent(民族toolStripComboBox.SelectedItem), ddPercent(职称toolStripComboBox.SelectedItem), ddPercent(政治面貌2toolStripComboBox.SelectedItem), ddPercent(婚姻状况toolStripComboBox.SelectedItem), ddPercent(文化程度toolStripComboBox.SelectedItem), ddPercent(籍贯toolStripTextBox.Text));
}
this.基本档案Tbledpter.Fill(this.myPersonnelDtSet.基本档案);
this.myPersonnelDtSet.基本档案.Rows.Cler();
MyConnection.Open();
SqlCommnd MyCommnd = MyConnection.CreteCommnd();
MyCommnd.CommndText = "delete * From 基本档案where =@";
}
MyCommnd.CommndText = "Select mx(自编号) 最大编号 From 基本档案;
object MyResult = MyCommnd.ExecuteSclr();
Int64 MyID = 1;
if (MyResult != System.DBNull.Vlue)
{
String MyMxID = MyResult.ToString().Trim();
MyMxID = MyMxID.Substring(2, MyMxID.Length - 2);
MyID = Convert.ToInt64(MyMxID) + 1;
}
int MyLength = MyID.ToString().Length;
string MyNewID = "";
switch (