zoukankan      html  css  js  c++  java
  • DataGridView 如何退出 编辑状态

    DataGridView.EndEdit 方法:提交对当前单元格进行的编辑并结束编辑操作。

    ——————————————————————————————————————————————

    在使用bindingSource、bindingNavigator+DataGridView修改时会发现,
    当你需要保存修改过后的内容,必须将光标指向另外一行,
    DataGridView才会将编辑过后的数据提交到数据缓存区,
    那么,就会让客户感觉起来很不方便(无法直接点保存更新)
    这两天上网查了几个方法,可行,下面列举一下:

    一、最常见的解决办法。
    使用select(),或者修改当前单元格索引使光标跳到另外一行。
    这种方式有其弊端,那就是当你只有一行数据时,这方法就行不通。
    只能在你点保存之前,新增一行空数据,然后将光标移向空数据,保存之后再将这行空数据删除。
    这种方式实现起来比较麻烦,不利于快速开发。

    二、使用EndEdit()方法
    这种方法其实仔细看看和上面的方法其实同出一辙,
    唯一不同的是,这是系统自带的方式,当然就不会出现上面出现的问题。
    不过这里要注意一下,只有在保存之前bindingSource和DataGridView都使用了EndEdit()方法表格内数据才能成功提交。(只用一个是没有效果的。)

    三、在网上看到的比较搞笑的方法
    SendKeys.Send( "{ENTER} ")
    模拟人工输入“回车”
    当时看到觉得挺搞笑,不过这也不失为一种良方。

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/daoyuly/archive/2008/11/19/3334259.aspx

    以前一直用选择其它行的方式结束编辑当前的行,进而实现保存。

    今天突然发现了只要执行这句就好了,无语了,省略N个字。

    转自:http://www.cnblogs.com/pksniq/archive/2011/02/16/2102946.html

  • 相关阅读:
    how to uninstall devkit
    asp.net中bin目录下的 dll.refresh文件
    查找2个分支的共同父节点
    Three ways to do WCF instance management
    WCF Concurrency (Single, Multiple, and Reentrant) and Throttling
    检查string是否为double
    How to hide TabPage from TabControl
    获取当前系统中的时区
    git svn cygwin_exception
    lodoop打印控制具体解释
  • 原文地址:https://www.cnblogs.com/huangfr/p/2180406.html
Copyright © 2011-2022 走看看