三,客户模块设计
对客户管理模块的设计,要重点从三块来设计。一是加入模块,二是更改模块,三是浏览模块。
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)点击菜单条上的删除,显示删除客户信息的对话框: