C#员工打卡
2017-02-18 12:19
211 查看
泛型集合List的添加,查询和删除操作
使用泛型集合绑定DataGridView
用List绑定DataGridView控件的方法
DataGridView 对象.DataSource=List 对象;
主界面:
public partial class FrmMaintance : Form
{
public FrmMaintance()
{
InitializeComponent();
this.combsex.SelectedIndex = 0;
}
public FrmMain FrmParent { get; set; }
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
private void baocun_Click(object sender, EventArgs e)
{
try
{
SE se = new SE();
se.Id =this.textid.Text.Trim();
se.Age = Int32.Parse(this.textage.Text.Trim());
se.Name = this.textname.Text.Trim();
if (this.combsex.SelectedItem.ToString() == "男")
{
se.Sex = Gender.男;
}
else
{
se.Sex = Gender.女;
}
foreach (SE item in FrmParent.programmerList)
{
if (item.Id == se.Id)
{
MessageBox.Show("此工号已经存在!");
return;
}
}
FrmParent.programmerList.Add(se);
this.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally {
this.FrmParent.BindGrid(FrmParent.programmerList);
}
}
员工信息维护界面:
public partial class FrmMain : Form
{
public FrmMain()
{
InitializeComponent();
}
public List<SE> programmerList = new List<SE>();
public void BindGrid(List<SE> list) {
this.dgvProgrammer.DataSource=new BindingList<SE>(programmerList);
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
FrmMaintance f = new FrmMaintance();
f.FrmParent = this;
f.Show();
}
private void FrmMain_Load(object sender, EventArgs e)
{
BindGrid(programmerList);
xianshi();
}
public void xianshi() {
programmerList.Add(new SE(){Id="1",Age=1,Name="李",Sex=Gender.男});
dgvProgrammer.DataSource = new BindingList<SE>(programmerList);
}
private void button1_Click(object sender, EventArgs e)
{
List<SE> tempList = new List<SE>();
foreach (SE item in this.programmerList)
{
if(item.Id.IndexOf(this.textid.Text.Trim())!=-1)
{
tempList.Add(item);
}
}
this.dgvProgrammer.DataSource = new BindingList<SE>(tempList);
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
if (MessageBox.Show("是否确认删除", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information)==DialogResult.OK)
{
foreach (SE item in this.programmerList)
{
if (dgvProgrammer.SelectedRows[0].Cells[0].Value.ToString() == item.Id)
{
programmerList.Remove(item);
break;
}
//dgvProgrammer.SelectedRows[0].Cells[0].Value
}
MessageBox.Show("删除成功");
//this.dgvProgrammer.DataSource=new BindingList<SE>(programmerList);
BindGrid(programmerList);
}
}
private Dictionary<string, Record> recordList = new Dictionary<string, Record>();
private void 签到ToolStripMenuItem_Click(object sender, EventArgs e)
{
if(this.dgvProgrammer.SelectedRows.Count!=1){
MessageBox.Show("请选择一行");
return;
}
string workNo = dgvProgrammer.CurrentRow.Cells["id"].Value.ToString();
foreach (string item in recordList.Keys)
{
if(workNo==item){
MessageBox.Show("您已经签到过");
return;
}
}
Record record = new Record();
record.Id = workNo;
record.Name = this.dgvProgrammer.CurrentRow.Cells["name"].Value.ToString();
record.SignInTime = DateTime.Now;
this.recordList.Add(record.Id,record);
MessageBox.Show("签到成功!");
}
private void 前退ToolStripMenuItem_Click(object sender,
9991
EventArgs e)
{
if (this.dgvProgrammer.SelectedRows.Count != 1)
{
MessageBox.Show("请选择一行");
return;
}
string id = this.dgvProgrammer.CurrentRow.Cells["id"].Value.ToString();
bool isOut = false;
foreach (string item in recordList.Keys)
{
if(item==id){
this.recordList[item].SignOutTime = DateTime.Now;
MessageBox.Show("签退成功");
isOut = true;
break;
}
}
if(!isOut){
MessageBox.Show("抱歉,尚未签到!");
}
}
private void toolStripButton3_Click(object sender, EventArgs e)
{
Frmshow frm = new Frmshow();
frm.recordList = this.recordList;
frm.ShowDialog();
}
打卡记录:
public partial class Frmshow : Form
{
public Frmshow()
{
InitializeComponent();
}
public Dictionary<string, Record> recordList { get; set; }
public void xianshi() {
BindingSource vs = new BindingSource();
vs.DataSource = recordList.Values;
this.dataGridView1.DataSource=vs;
}
private void Frmshow_Load(object sender, EventArgs e)
{
xianshi();
}
}
使用泛型集合绑定DataGridView
用List绑定DataGridView控件的方法
DataGridView 对象.DataSource=List 对象;
主界面:
public partial class FrmMaintance : Form
{
public FrmMaintance()
{
InitializeComponent();
this.combsex.SelectedIndex = 0;
}
public FrmMain FrmParent { get; set; }
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
private void baocun_Click(object sender, EventArgs e)
{
try
{
SE se = new SE();
se.Id =this.textid.Text.Trim();
se.Age = Int32.Parse(this.textage.Text.Trim());
se.Name = this.textname.Text.Trim();
if (this.combsex.SelectedItem.ToString() == "男")
{
se.Sex = Gender.男;
}
else
{
se.Sex = Gender.女;
}
foreach (SE item in FrmParent.programmerList)
{
if (item.Id == se.Id)
{
MessageBox.Show("此工号已经存在!");
return;
}
}
FrmParent.programmerList.Add(se);
this.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally {
this.FrmParent.BindGrid(FrmParent.programmerList);
}
}
员工信息维护界面:
public partial class FrmMain : Form
{
public FrmMain()
{
InitializeComponent();
}
public List<SE> programmerList = new List<SE>();
public void BindGrid(List<SE> list) {
this.dgvProgrammer.DataSource=new BindingList<SE>(programmerList);
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
FrmMaintance f = new FrmMaintance();
f.FrmParent = this;
f.Show();
}
private void FrmMain_Load(object sender, EventArgs e)
{
BindGrid(programmerList);
xianshi();
}
public void xianshi() {
programmerList.Add(new SE(){Id="1",Age=1,Name="李",Sex=Gender.男});
dgvProgrammer.DataSource = new BindingList<SE>(programmerList);
}
private void button1_Click(object sender, EventArgs e)
{
List<SE> tempList = new List<SE>();
foreach (SE item in this.programmerList)
{
if(item.Id.IndexOf(this.textid.Text.Trim())!=-1)
{
tempList.Add(item);
}
}
this.dgvProgrammer.DataSource = new BindingList<SE>(tempList);
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
if (MessageBox.Show("是否确认删除", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information)==DialogResult.OK)
{
foreach (SE item in this.programmerList)
{
if (dgvProgrammer.SelectedRows[0].Cells[0].Value.ToString() == item.Id)
{
programmerList.Remove(item);
break;
}
//dgvProgrammer.SelectedRows[0].Cells[0].Value
}
MessageBox.Show("删除成功");
//this.dgvProgrammer.DataSource=new BindingList<SE>(programmerList);
BindGrid(programmerList);
}
}
private Dictionary<string, Record> recordList = new Dictionary<string, Record>();
private void 签到ToolStripMenuItem_Click(object sender, EventArgs e)
{
if(this.dgvProgrammer.SelectedRows.Count!=1){
MessageBox.Show("请选择一行");
return;
}
string workNo = dgvProgrammer.CurrentRow.Cells["id"].Value.ToString();
foreach (string item in recordList.Keys)
{
if(workNo==item){
MessageBox.Show("您已经签到过");
return;
}
}
Record record = new Record();
record.Id = workNo;
record.Name = this.dgvProgrammer.CurrentRow.Cells["name"].Value.ToString();
record.SignInTime = DateTime.Now;
this.recordList.Add(record.Id,record);
MessageBox.Show("签到成功!");
}
private void 前退ToolStripMenuItem_Click(object sender,
9991
EventArgs e)
{
if (this.dgvProgrammer.SelectedRows.Count != 1)
{
MessageBox.Show("请选择一行");
return;
}
string id = this.dgvProgrammer.CurrentRow.Cells["id"].Value.ToString();
bool isOut = false;
foreach (string item in recordList.Keys)
{
if(item==id){
this.recordList[item].SignOutTime = DateTime.Now;
MessageBox.Show("签退成功");
isOut = true;
break;
}
}
if(!isOut){
MessageBox.Show("抱歉,尚未签到!");
}
}
private void toolStripButton3_Click(object sender, EventArgs e)
{
Frmshow frm = new Frmshow();
frm.recordList = this.recordList;
frm.ShowDialog();
}
打卡记录:
public partial class Frmshow : Form
{
public Frmshow()
{
InitializeComponent();
}
public Dictionary<string, Record> recordList { get; set; }
public void xianshi() {
BindingSource vs = new BindingSource();
vs.DataSource = recordList.Values;
this.dataGridView1.DataSource=vs;
}
private void Frmshow_Load(object sender, EventArgs e)
{
xianshi();
}
}
相关文章推荐
- C# 员工打卡
- c#员工打卡
- 深入.NET平台和C#语言 第三章员工打卡
- c#员工管理
- 计算员工有效工作时间(C#版)
- 员工打卡 正班工时计算
- 黑马程序员 C#学习笔记⑥ 三层架构基础实现员工信息管理
- [简单工作流系统的自己搭建]数据库设计-员工打卡、考勤、工资等
- 按某一段时间,自动生成员工的打卡记录
- C# WindowsForm 员工管理系统二【删除】
- 中控考勤机SDK使用中员工姓名的处理( c# )
- 利用C#,SqlXml技术将NorthWind中的所有记录取出并显示出来(包括员工图片)
- C# WindowsForm 员工管理系统四【发放工资】
- 员工打卡
- C# WindowsForm 员工管理系统三【注册】
- C#中一道关于员工信息系统的题(主要考察LinQ和正则表达式验证)
- C# 统计员工上下班情况
- 大公司业务流程审批组件【部门的员工—部门经理—部门副总—人力经理—人力副总】实现参考,强大的基础数据管理工具-C#.NET通用权限管理系统组件
- C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 – 员工离职管理
- C# WindowsForm 员工管理系统六【修改密码】