在DataGrid中的使用删除列时,要设置DataKeyField属性,然后使用"delete from userxx where id like '"+DataGrid1.DataKeys[(int)e.Item.ItemIndex]+"'"语句来删除,但是如果where后有两个条件呢,比如说id like '"+DataGrid1.DataKeys[(int)e.Item.ItemIndex]+"' and date1 like ...后面这个条件应该怎么写呢?DataKeyField属性只能设置一个列吗?如果有两个条件那该怎么办呢,请高手多多指点,谢谢!!!

解决方案 »

  1.   

    DataKeyField是以一个特殊列的形式棒定到DataGrid中的,你要删除一个行数据,where id="+DataGrid1.DataKeys[e.Item.ItemIndex]就能定位那一行了。如果你需要再添加条件,那就在后面追加。至于追加条件的值,可以通过特殊的方法获得,比如加入checkbox列,通过判断选中情况可以删除相应的行。
      

  2.   

    DataKeyField只能设置一列,但是如果表有两个字键bh和xh,并且两列中存储的值都是固定长度,就有简单办法了,从数据库中选择时把两列设成一列:select bh+xh primarykey,*,* from ****,要用时取出来再分拆就行了,如果不是固定长度就要麻烦点.