本帖最后由 jimk5200 于 2013-06-18 17:27:49 编辑

解决方案 »

  1.   

    不知道 你获取数据源的方式是怎样的??我的是使用List集合,不过如果你使用的是DataTable最好,我说下我的思路吧
    1:读取数据源到List或者DataTable,这里如果使用的是List,需要转换成DataTable这种方法网上很多,如果使用的DataTable ,这个DataTable的结构需要你手动设计,就是列的定义包括名称和类型,这里的类型最好跟读取数据表的结构一致,然后指定GridControl的列的FieldName为列明。2:读取数据成功后判断是否存在数据,有的话直接绑定到你的GridControl,为空的话再进行创建DataTable操作,把这个空的DataTable也进行绑定到GridControl.3:然后你可以进行输入数据,这里输入的数据会自动保存到DataTable中,当然如果有校验的话需进行校验。4: 你可以在实例化新行的时候处理那个DataTable(就是新的数据行呈现的时候),具体标示的话就是主键ID,如果你循环这个DataTable的行时,获得行对象,判断该对象的主键是否为空,如果为的空的话,那就是你新增的行,后台需要执行新增操作;如果不为空,就是原来的数据或者是你修改后的数据,后台就需要执行更新操作。
    至于你说的按键的话,本人用的是Tab键,可能涉及多列输入就比较方便了。希望能帮到你。。
      

  2.   

    另外忘说了,我使用的button按钮事件处理,至于你的那种保存方式,我只能说,自己去想吧。
      

  3.   

    虽然没有得到想要的答案,不过自己花了点时间研究,也算把功能实现了,项目紧,一直没有时间把这些东西整理出来。
    今天下午花了点时间,总算是整理出来了,方便后面的朋友。下面给出博文的地址,有兴趣的可以去看看http://blog.csdn.net/jimk5200/article/details/9180861