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();

你可能感兴趣的:(2018-12-01)