三,客户模块设计
对客户管理模块的设计,要重点从三块来设计。一是加入模块,二是更改模块,三是浏览模块。
1。客户管理模块
客户管理模块在窗口上包括一个ToolStrip控件和一个DataGridView控件。ToolStrip控件中加入三个Label项。用来对DataGridView控件中所选择的行进行加入。删除和改动。
客户管理模块的设计演示样例为:
客户管理模块设计的窗口和控件的属性设置文档为:
接着就是要进行代码的写入:
(1)对于toolStrip1控件的代码写入是基本的。这里面包括加入,改动,删除三项操作:
private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { if (e.ClickedItem.Name == "tslAdd")//加入 { showForm(0);//弹出加入窗口 } if (e.ClickedItem.Name == "tslMod")//改动 { modChildren1();//弹出改动窗口 } if (e.ClickedItem.Name == "tslDel")//删除 { DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo); if (status == DialogResult.Yes) { delChildren1();//删除所选择的客户 } } }
(2)其次就是对加入窗口,改动窗口和删除三项内容的代码编辑。实际上客户信息加入和客户信息改动两个窗口本身是一个窗口。
完整的Children1窗口的程序代码为:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Data.SqlClient;//引入命名空间 namespace 客户管理系统 { public partial class Children1 : Form { common cm = new common();//载入公共类common database db=new database();//载入公共类database public Children1()//构造函数 { InitializeComponent(); } private void Children1_Load(object sender, EventArgs e)//客户管理窗口的load事件 { showCustomer();//显示客户 } private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) { if (e.ClickedItem.Name == "tslAdd")//加入 { showForm(0);//弹出加入窗口 } if (e.ClickedItem.Name == "tslMod")//改动 { modChildren1();//弹出改动窗口 } if (e.ClickedItem.Name == "tslDel")//删除 { DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo); if (status == DialogResult.Yes) { delChildren1();//删除所选择的客户 } } } private void showForm(int t)//弹出加入或改动窗口 { addChildren1 c1=new addChildren1();//创建加入客户或改动客户窗口的对象 c1.ID=t; DialogResult result=c1.ShowDialog(); if (result==DialogResult.OK) { showCustomer(); } } private void modChildren1()//弹出改动客户资料窗口 { if (dgv.RowCount>0)//存在行 { if (dgv.SelectedRows.Count==1)//选择行 { string value=dgv.SelectedRows[0].Cells[0].Value.ToString(); if (value!=null&&value!=string.Empty)//判定非空 { showForm(int.Parse(value));//弹出改动窗口 } else { MessageBox.Show("所选行不存在数据!"); } } else { MessageBox.Show("请选择一行要改动的数据!"); } } else { MessageBox.Show("眼下还没有数据!"); } } private void delChildren1()//删除所选择客户 { if (dgv.SelectedRows.Count>0) { for (int i = 0; i < dgv.SelectedRows.Count; i++) { string selectID = dgv.SelectedRows[1].Cells[0].Value.ToString(); if (selectID!=null&&selectID!=string.Empty) { db.runSql("delete customer where id="+selectID); } } showCustomer(); } } private void showCustomer()//显示客户资料 { cm.bindDgv(dgv, "select * from customer order by id desc");//以表格的形式显示客户资料 } } }
执行整个程序的结果显示为:
(1)点击菜单条上的加入。显示加入客户信息的窗口:
(2)点击菜单条上的改动。显示改动客户信息的窗口:
(3)点击菜单条上的删除,显示删除客户信息的对话框: