zoukankan      html  css  js  c++  java
  • DataGridView修改数据并传到数据库

    1、 两个属性设置: 
    第一个:设置自动创建列,默认为True 
    DataGridView1. AutoGenerateColumns = True; 
    虽然默认为True,但写下去总是好的!!! 
    第二个:鼠标单击编辑,默认双击 
    DataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;

    2、 防止单元格被编辑: 
    DataGridViewCell:限制单元格 
    DataGridViewColumn:限制列 
    DataGridViewRow:限制行 
    DataGridViewReadOnly:限制整个DataGridView控件 
    关键代码如下:

        dataGridView1.ReadOnly = true;//整个表格只读
                    dataGridView1.Columns[1].ReadOnly = true;//列只读
                    dataGridView1.Rows[0].ReadOnly = true;//行只读
                    dataGridView1[3,3].ReadOnly = true;//单元格只读

    获取数据

    string strcolumn = dataGridView1.Columns[e.ColumnIndex].HeaderText;//获取列标题
    string strrow = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();//获取焦点触发行的第一个值
    string value = dataGridView1.CurrentCell.Value.ToString();//获取当前点击的活动单元格的值

    还有一种限制编辑的方式,EditMode枚举下的EditProgrammatically的属性:

    dataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;
    //仅在调用 System.Windows.Forms.DataGridView.BeginEdit(System.Boolean) 方法时开始编辑

    此属性需要调用一个CellBeginEdit事件,编辑条件写在方法中。

    private void dataGridView1_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
            {
               // dataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;
               //在点击单元格时,触发此事件,进行有条件的编辑
            }

    3、可通过CellValueChanged事件来实现更新数据库的数据数据链接

     private SqlConnection connection()
            {
                string strconn = "server = XQ-20160210KQLE\SA;uid = sa;pwd = 123456;database = JYXinXi";
                SqlConnection conn = new SqlConnection(strconn);
                return conn;
            }

    DataGridView显示数据

    private void GetDataGridView()
            {
                try
                {
                    string strda = "select * from FilTer";
                    SqlConnection conn = connection();
                    conn.Open();
                    DataSet ds = new DataSet();
                    SqlDataAdapter da = new SqlDataAdapter(strda, conn);
                    da.Fill(ds, "显示数据");
                    conn.Close();
                    dataGridView1.AutoGenerateColumns = true;//自动创建列
                    dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;//单击单元格编辑
                    dataGridView1.DataSource = ds.Tables[0];
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message.ToString());
                }
            }

    更新数据库

    private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
            {
                SqlConnection conn = connection();    
                try
                {
                    string strcolumn = dataGridView1.Columns[e.ColumnIndex].HeaderText;//获取列标题
                    string strrow = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();//获取焦点触发行的第一个值
                    string value = dataGridView1.CurrentCell.Value.ToString();//获取当前点击的活动单元格的值
                    string strcomm = "update FilTer set " + strcolumn + "='" + value + "'where id = " + strrow;
                    //update FilTer set 列名 = value where id = 3
                    conn.Open();
                    SqlCommand comm = new SqlCommand(strcomm, conn);
                    comm.ExecuteNonQuery();
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message.ToString());
                }
                finally
                {
                    conn.Close();
                }
            }
  • 相关阅读:
    Spring Boot 使用 Dom4j XStream 操作 Xml
    Spring Boot 使用 JAX-WS 调用 WebService 服务
    Spring Boot 使用 CXF 调用 WebService 服务
    Spring Boot 开发 WebService 服务
    Spring Boot 中使用 HttpClient 进行 POST GET PUT DELETE
    Spring Boot Ftp Client 客户端示例支持断点续传
    Spring Boot 发送邮件
    Spring Boot 定时任务 Quartz 使用教程
    Spring Boot 缓存应用 Memcached 入门教程
    ThreadLocal,Java中特殊的线程绑定机制
  • 原文地址:https://www.cnblogs.com/liuqifeng/p/9149694.html
Copyright © 2011-2022 走看看