大虾没搞明白,现在的问题都是在update以前的,和update没关系。

解决方案 »

  1.   

    int i ;
    ArrayList al = new ArrayList();for(i=0;i<=this.dataset11.Tables[0].Rows.Count-1;i++)
    {
    if (this.dataGrid1.IsSelected(i)) al.Add(i);
    }
    foreach (int elementValue in al)
    {
    this.dataset11.Tables[0].Rows[elementValue].Delete();
    }
    dataset11.Bind();
      

  2.   

    dataset11可以bind吗?我这里好像没这个方法。
      

  3.   

    若果您用了帮定,可以不用管datagrid和dataset中数据的顺序对应;任他按“del”,最后保存前
    dataGrid1.BindingContext[this.dataGrid1.DataSource].EndCurrentEdit()应该就更新了;
      

  4.   

    绑定dataset不知道你自己是如何绑定的??问题应该是这里,建议你把sql的查询语句附值给一个label.text,然后再用这个label.text去绑定你的datagrid做法如下:
    public static void BindDataGrid(DataGrid datagrid, string connectionString,string commandString)
    { SqlConnection conn=new SqlConnection(connectionString);
    SqlCommand comm=new SqlCommand(commandString,conn);
    SqlDataAdapter adapter=new SqlDataAdapter();
    adapter.SelectCommand =comm;
    DataSet dataset=new DataSet ();
     
    try
    {
    adapter.Fill(dataset,"table"); 
    count=dataset.Tables["table"].DefaultView.Count;
    datagrid.DataSource=dataset.Tables["table"].DefaultView;
    datagrid.DataBind();
    }
    finally
    {
    conn.Close();
    } return count; }
    即:commandString = label.text ;label.text  ="Select * From test";
      

  5.   

    我是通过设置属性实现绑定的,不是通过代码。我知道按“del”可以实现我的要求,但是我想用自己写的代码来实现。
      

  6.   

    删除grid的时候同时删除DataSet中对应的数据记录
      

  7.   

    大虾还是没明白,dataset里面的数据不能删除,只能打上标记。如果删除的话,在update的时候,数据库里面的记录不会被删除。所以只有用delete命令而不是removeat命令,在update的时候才可以。而为了显示,datagrid里面的必须删除,这必然造成了datagrid和dataset不同步,也不能同步。
      

  8.   

    我最想知道的,就是当我按下“del”的时候,实际上到底执行了什么代码。
      

  9.   

    困扰我好几天了,解决这个问题,我的思路是这样的:先取得datagrid里面所有记录的总数,然后for或者foreach循环,逐一判断isselect(),再把被选中的记录在dataset里面的记录号找出来逐一删除。大虾们帮帮忙吧。
      

  10.   

    干吗搞得这么复杂,选定一个行以后按删除键,在按钮点击事件里头
    先找到这个行的唯一标识符(一般是用主键的值),再到表里头根据这个值找到相应的Row删除就可以了。DataSet 和 DataGrid 里面的纪录就都删除了。
    一般这样邦定datagrid.DataSourse=datatable;
      

  11.   

    我觉得一定能实现,肯定能从选中的datagrid记录找到该记录在datatable里面的记录编号。