DataGridView使用技巧三:不显示最下面的新行、判断新增行
一、DataGridView不显示下面的新行
通常DataGridView的最下面一行是用户新追加的行(行头显示*)。如果不想让用户新追加行即不想显示该新行,可以将DataGridView对象的AllowUserToAddRows属性设置为False。
示例:
this.dgv_PropDemo.AllowUserToAddRows = false;
但是,可以通过程序给DataGridView追加新行:
this.dgv_Demo.Rows.Add();
注:只有DataGridView是非绑定模式时才可以这样使用。
如果DataGridView的DataSource绑定的是DataView,还可以通过设置DataView.AllowAdd属性为False来达到同样的效果。
二、DataGridView判断新增行
DataGridView的AllowUserToAddRows属性为True时允许用户追加新行,DataGridView的最后一行就是新追加的行。使用DataGridViewRow.IsNewRow属性可以判断哪一行是新追加的行。另外,通过DataGridView.NewRowIndex可以获取新行的行序号。在没有新行的时候,NewRowIndex=-1。
在保存数据到数据库的时候,可以根据IsNewRow来判断是不是新行,如果是新行,才进行保存。
DataGridView使用技巧三:不显示最下面的新行、判断新增行的更多相关文章
- 经验分享:多屏复杂动画CSS技巧三则
当下CSS3应用已经相当广泛,其中重要成员之一就是CSS3动画.并且,随着CSS动画的逐渐深入与普及,更复杂与细腻的动画场景也如雨后春笋般破土而出.例如上个月做的「企业QQ-新年祝福」活动: 感谢sh ...
- 多屏复杂动画CSS技巧三则(转载)
本文转载自: 经验分享:多屏复杂动画CSS技巧三则
- 解决DataGridView在多线程中无法显示滚动条的问题
在多线程中对DataGridView指定 DataSource 来填充数据,更新数据的时候,会导致DataGridView出现假死,显示错误或者滚动条无法显示的问题,在保证了DataGridView的 ...
- C#中datagridview选中行后textbox显示选中的内容
我想让datagridview中某一行被选中时,textbox中显示选中的值,datagridview的选中模式是整行:this.dataGridView1.SelectionMode = DataG ...
- Linux Shell常用技巧(三)
八. 流编辑器sed: sed一次处理一行文件并把输出送往屏幕.sed把当前处理的行存储在临时缓冲区中,称为模式空间(pattern space).一旦sed完成对模式空间中的行的处理,模式空间中的行 ...
- DataGridView使用技巧九:DataGridView的右键菜单(ContextMenuStrip)
DataGridView,DataGridViewColumn,DataGridViewRow,DataGridViewCell有ContextMenuStrip属性.可以通过设置ContextMen ...
- DataGridView使用技巧四:删除行操作
一.无条件的删除行 默认时,DataGridView是允许用户进行行的删除操作,选中要删除的行,按Delete键可以删除,该操作没有任何提示(只是删除界面显示的数据,不会真实删除数据库中的数据).如果 ...
- DataGridView使用技巧(七、设定列宽和行高自动调整)----.NET
DataGridView使用技巧(七.设定列宽和行高自动调整)----.NET 1) 设定行高和列宽自动调整 [VB.NET]' 设定包括Header和所有单元格的列宽自动调整DataGridView ...
- 《手把手教你》系列技巧篇(四十七)-java+ selenium自动化测试-判断元素是否显示(详解教程)
1.简介 webdriver有三种判断元素状态的方法,分别是isEnabled,isSelected 和 isDisplayed,其中isSelected在前面的内容中已经简单的介绍了,isSelec ...
随机推荐
- innerHTML和innerText区分
示例代码:<div id="test"> <span style="color:red">test1</span> test ...
- PLSQL_自治事务和嵌套事物的理解和用法(案例)
2014-06-01 Created By BaoXinjian
- 关于 二维码 与 NFC 之间的出身贫贱说
关于 二维码 与 NFC 之间的出身贫贱说 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 ...
- VS2008配置OpenGl 亲测可行
OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性.1.与C语言紧密结合.OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,OpenGL是 ...
- js获取控件位置以及不同浏览器中的差别
js获取控件位置(坐标位置)在不同浏览器中的差别. //获取坐标位置 function getpos(e) { var t=e.offsetTop; var l=e.offsetLeft; var h ...
- js动态创建表格,删除行列的小例子
js动态创建表格,删除行列的实例代码. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...
- linux安装rzsz(lrzsz)
lrzsz是一个unix通信套件提供的,X,Y和ZModem文件传输协议,可以用在Windows与linux系统之间的文件传输,体积小速度快,可以与xshell工具配合使用. (1)在线安装 yum ...
- bazel-编译动态库
demo2_2 使用baze编译动态库 demo2_2目录树 ├── app │ ├── BUILD │ ├── func.cpp │ └── func.hpp ├── README.md └── W ...
- 深入理解php 匿名函数和 Closure
而在PHP 5.3发布的时候, 其中有一条new feature就是支持闭包/Lambda Function, 我第一反应是以为zval新增了一个IS_FUNCTION, 但实际上是构造了一个PHP ...
- Oracle PLSQL Demo - 18.02.管道function[查询零散的字段组成list管道返回] [字段必须对上]
--PACKAGE CREATE OR REPLACE PACKAGE test_141215 is TYPE type_ref IS record( ENAME ), SAL )); TYPE t_ ...