C#在DataGridView表格中 直接 添加 修改 删除数据
效果图
Form1.cs 完整代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.OleDb; using System.Data;namespace WindowsFormsApplication1 {public partial class Form1 : Form{public Form1(){InitializeComponent();}private OleDbConnection ole_connection = null;private OleDbDataAdapter ole_da = null;private DataTable dt = new DataTable();private void Form1_Load(object sender, EventArgs e){try{//表中必有主键string strSql = "select * from jg_船名信息 ";string db_path = System.Windows.Forms.Application.StartupPath + @"\data\jingang3_db.mdb";string conn_str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + db_path + "'";this.ole_connection = new OleDbConnection(conn_str); //创建实例 this.ole_da = new OleDbDataAdapter(strSql, this.ole_connection);this.ole_da.Fill(this.dt);this.dataGridView1.DataSource = this.dt;}catch (Exception ex){MessageBox.Show("查询表信息时出错!");}}private void but保存_Click(object sender, EventArgs e){ try{//表中必有主键System.Data.OleDb.OleDbCommandBuilder ole_cb = new OleDbCommandBuilder(this.ole_da);this.ole_da.UpdateCommand = ole_cb.GetUpdateCommand();this.ole_da.Update(this.dt);MessageBox.Show("保存成功!");}catch (Exception ex){MessageBox.Show("保存失败!");}}private void but删除_Click(object sender, EventArgs e){try{this.dataGridView1.Rows.RemoveAt(this.dataGridView1.CurrentCell.RowIndex);//删除选中行//表中必有主键//数据库中进行删除System.Data.OleDb.OleDbCommandBuilder ole_cb = new OleDbCommandBuilder(this.ole_da);this.ole_da.UpdateCommand = ole_cb.GetUpdateCommand();this.ole_da.Update(this.dt);MessageBox.Show("删除成功!");}catch (Exception ex){MessageBox.Show("删除失败!");}}private void butClose_Click(object sender, EventArgs e){this.Close();}} }