客户管理系统之模块设计(七)

        三,投诉模块设计

          对投诉管理模块的设计,要重点从三块来设计,一是加入模块,二是更改模块。三是浏览模块。

         1,投诉管理模块

         投诉管理模块在窗口上包括一个ToolStrip控件和一个DataGridView控件。ToolStrip控件中加入三个Label项,用来对DataGridView控件中所选择的行进行加入。删除和改动。

         投诉管理模块的设计演示样例为:

 

         投诉管理模块设计的窗口和控件的属性设置文档为:

 

         接着就是要进行代码的写入:

         (1)对于toolStrip1控件的代码写入是基本的,这里面包括加入,改动,删除三项操作:

       private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)//投诉管理窗口的load事件
        {
            if (e.ClickedItem.Name == "tslAdd3")//加入
            {
                showChildren3(0);//弹出加入窗口
            }
            if (e.ClickedItem.Name == "tslMod3")//改动
            {
                modChildren3();//弹出改动窗口
            }
            if (e.ClickedItem.Name == "tslDel3")//删除
            {
                DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo);
                if (status == DialogResult.Yes)
                {
                    delChildren3();//删除所选择的投诉信息记录
                }
            }
        }

         (2)其次就是对加入窗口,改动窗口和删除三项内容的代码编辑,实际上投诉信息加入和投诉信息改动两个窗口本身是一个窗口。

         完整的Children3投诉管理窗口的程序代码为:

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 Children3 : Form
    {
        common cm = new common();//载入公共类common
        database db = new database();//载入公共类database

        public Children3()
        {
            InitializeComponent();//构造函数
        }

        private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)//投诉管理窗口的load事件
        {
            if (e.ClickedItem.Name == "tslAdd3")//加入
            {
                showChildren3(0);//弹出加入窗口
            }
            if (e.ClickedItem.Name == "tslMod3")//改动
            {
                modChildren3();//弹出改动窗口
            }
            if (e.ClickedItem.Name == "tslDel3")//删除
            {
                DialogResult status = MessageBox.Show("你确认删除所选的行?", "确定对话框", MessageBoxButtons.YesNo);
                if (status == DialogResult.Yes)
                {
                    delChildren3();//删除所选择的投诉信息记录
                }
            }
        }

        private void showChildren3(int t)//弹出加入或改动投诉窗口
        {
            addChildren3 c3 = new addChildren3();//创建加入投诉或改动投诉窗口的对象
            c3.ID = t;
            DialogResult result = c3.ShowDialog();
            if (result == DialogResult.OK)
            {
                showInform();
            }
        }

        private void modChildren3()//弹出改动投诉信息窗口
        {
            if (dgv3.RowCount > 0)//存在行
            {
                if (dgv3.SelectedRows.Count == 1)//选择行
                {
                    string value = dgv3.SelectedRows[0].Cells[0].Value.ToString();
                    if (value != null && value != string.Empty)//判定非空
                    {
                        showChildren3(int.Parse(value));//弹出改动窗口
                    }
                    else
                    {
                        MessageBox.Show("所选行不存在数据!");
                    }
                }
                else
                {
                    MessageBox.Show("请选择一行要改动的数据。");
                }
            }
            else
            {
                MessageBox.Show("眼下还没有数据。");
            }
        }

        private void delChildren3()//删除所选择投诉
        {
            if (dgv3.SelectedRows.Count > 0)
            {
                for (int i = 0; i < dgv3.SelectedRows.Count; i++)
                {
                    string selectID = dgv3.SelectedRows[1].Cells[0].Value.ToString();
                    if (selectID != null && selectID != string.Empty)
                    {
                        db.runSql("delete inform where id=" + selectID);
                    }
                }
                showInform();
            }
        }

        private void showInform()//显示投诉信息
        {
            cm.bindDgv(dgv3, "select * from inform order by id desc");//以表格的形式显示投诉信息
        }

        private void Children3_Load(object sender, EventArgs e)//投诉管理窗口的load事件
        {
            showInform();//显示投诉信息
        }

    }
}

        执行整个程序的结果显示为:

        (1)点击菜单条上的加入。显示加入投诉信息的窗口:

 

        (2)点击菜单条上的改动。显示改动投诉信息的窗口:

 

        (3)点击菜单条上的删除,显示删除投诉信息的对话框:

 

posted @ 2017-06-27 17:18  mfmdaoyou  阅读(215)  评论(0编辑  收藏  举报