2018-12-01

2.8

1.画面

创建一个新的窗口,打开工具箱拖SplitContainer控件到新的窗口里,右键点击属性切换为splitContainer1整个控件,切换为水平拆分器方向。
打开工具箱拖GroupBox控件到Panel1里。
打开工具箱拖DataGridView控件到Panel2里,点击控件右上角的小三角形,点击编辑列,添加列,在添加列的设计里,把Name改为与数据库表的名一样。在编辑列添加修改删除,点击添加,选类型DataGridViewLinkColumn点击添加,Text命名为修改,在创建一个类型为DataGridViewLinkColumn,Text命名为删除。


image.png

image.png

2.ADO.NET删除数据库

          // 连接字符串,注意与实际环境保持一致
            String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
            SqlConnection sqlConn = new SqlConnection(connStr);
            try
            {
                // 连接数据库
                sqlConn.Open();

                // 构造命令
                String sqlStr = "delete from GOODS where ID=@id";
                SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);

                // SQL字符串参数赋值
               
                cmd.Parameters.Add(new SqlParameter("@id", GOODS.Id));

                // 将命令发送给数据库
                int res = cmd.ExecuteNonQuery();

                // 根据返回值判断是否修改成功
                if (res != 0)
                {
                    MessageBox.Show("密码修改成功");
                    this.Close();
                }
                else
                {
                    MessageBox.Show("密码修改错误");
                }
            }
            catch (Exception exp)
            {
                MessageBox.Show("访问数据库错误:" + exp.Message);
            }
            finally
            {
                sqlConn.Close();
            }

3.供应商

打开工具箱,拖Label控件和comboBox控件在录入商品信息窗口,comboBox控件属性DropDownStyle改为DropDownList


image.png

4.DataGridView数据绑定流程

  // 点击修改链接
            if (e.RowIndex != -1 && e.ColumnIndex == 0)
            {
                // 获取所要修改关联对象的主键
                string goodsId = this.dgv_Goods["Id", e.RowIndex].Value.ToString(); 
                ModifyForm modifyForm = new ModifyForm(goodsId);
                modifyForm.Show();
            }
            else if (e.RowIndex != -1 && e.ColumnIndex == 1)
            {
                if (MessageBox.Show("确认删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                {
                    // 获取所要删除关联对象的主键
                    string goodsId = this.dgv_Goods["Id", e.RowIndex].Value.ToString();
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • E战到底第五期,打卡第十七天。 今日学习主题:查找函数(Vlookup、Hlookup、Index、Match)货...
    安静_8147阅读 292评论 0 0
  • 带着记忆的茉莉花戒指 爸爸最喜欢的花儿是设计的灵感。 小时家里的阳台每到夏天, 总会飘散着淡淡的清香… 或许画的粗...
    四姑娘Sisi阅读 982评论 0 3
  • 这是我离开校园拍的最后几张照片之一二。 然而,他并不是一开始就是这个样子的。 大学报到的新校区,在一座荒岛上。 没...
    7a64d7611a04阅读 344评论 5 5
  • 2017/3/7 小雨 第五天 身体真是自己的好搭档,昨晚跟它沟通了要好好睡,果然就一觉睡到天亮,8:30起床。今...
    我是曦姐阅读 657评论 2 1
  • 文/小麦 最近发现有很多文章是“控告”原生家庭的,启发了我也来凑热闹记一下“仇”,赶紧拿出简书小本本记下来。 从小...
    赖小麦阅读 1,204评论 10 12