Winform 查询信息在dataGridView里显示再修改返回数据库如何实现
VS2005   Winforms中使用DataGridView控件,添加bottom键查询信息,在DataGridView里显示,修改查询出来的信息,点击更新按钮后返回数据库,如何实现这个功能。
数据在DataGridView里直接显示(Form1_Load)可以更新,查询结果显示在DataGridView里,对查询结果无法更新。
各位能帮忙给个代码吗?
------解决方案--------------------绑定数据单独写个方法,在更新后再次调用这个方法进行重新绑定,即可。
------解决方案--------------------WinForm结构:
DataSet ds = null;
ds = //数据库中取出来的结果集
DataGridView.DataSource = ds.Tables[0];
Web结构:
DataSet ds = null;
ds = //数据库中取出来的结果集
DataGridView.DataSource = ds.Tables[0];
DataGridView.DataBind();
------解决方案--------------------DataSet ds = new DataSet();
SqlDataAdapter sda;
SqlCommandBuilder scb = new SqlCommandBuilder(sda);
sda.Update(ds);
this.dataGridView1.DataSource = ds.Tables[0];    
------解决方案--------------------DataSet绑定到bindingsource,bindingsource绑定到DataGridView,然后就很方便更新了
------解决方案--------------------
 dataGridView 的事件用有CellEndEdit 方法,在这个方法中获取修改的单元格的值
value = dataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value.ToString
然后写修改数据库的方法。当你在查询的时候,重新绑定一下DataGridView,DataGridView1.DataSource = dt //DataTable对象
------解决方案--------------------
LZ我给个完整的例子给你,我自己做的,可以更新,可以结贴给分啦
  public partial class HmdFrom : Form
   {
       DbConn conn = null;
       int strid;            //记录黑名单信息行id
       SqlDataAdapter Adapter;              //初始化Adapter对象
       DataSet ds = new DataSet();         //绑定协议单位信息DataSet
       String mm = "";
       public HmdFrom()
       {
           InitializeComponent();
       }
       private void HmdFrom_Load(object sender, EventArgs e)
       {
           button1.Enabled = false;
           String sql = "select * from hmd where 1=1";
           show(sql);
       }
       private void show(String sql)
       {
           try
           {
               conn = new DbConn();
               ds.Clear();
               Adapter = conn.DataGridViewBind(sql);
               Adapter.Fill(ds);
               DataTable dataTable = ds.Tables[0];
               dataGridView1.DataSource = dataTable.DefaultView;
               //设置dataGridView2不同的样式  
               this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
               this.dataGridView1.DefaultCellStyle.SelectionBackColor = Color.SkyBlue;
               this.dataGridView1.AllowUserToAddRows = true;
           }
           catch (SqlException ex)
           {
               MessageBox.Show(ex.Message);
           }
       }
       private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
       {
           strid = e.RowIndex;
       }
       //刷新datagridview1里的数据
       private void button1_Click(object sender, EventArgs e)
       {
           if (dataGridView1.Rows.Count != 0)
           {
               show(mm);
           }
       }
       //保存黑名单里的数据
       private void button2_Click(object sender, EventArgs e)
       {
           button1.Enabled = true;
           try
           {
               if (this.dataGridView1.SelectedRows[0].Cells[1].Value.ToString() != "" && this.dataGridView1.SelectedRows[0].Cells[1].Value != null)
               {
                   try
                   {
                       SqlCommandBuilder commBuilder = new SqlCommandBuilder();
                       commBuilder.DataAdapter = Adapter;