C# DataGridView中指定的单元格不能编辑
注意:DataGridView控件是从.NET Framework 2.0版本开始追加的。
ReadOnly属性的使用
DataGridView内所有的单元格不能编辑
当DataGridView.ReadOnly属性设定为True时, DataGridView内所有的单元格不能编辑。
但是使用这种方法可以对行进行删除。而且最下面的一行被表示,但不能输入。
- // DataGridView1的单元格只读
- DataGridView1.ReadOnly = true;
只有被指定的列、行、单元格不能编辑
只有被指定的列、行、单元格不能编辑时,通过设定DataGridViewColumn、DataGridViewRow、DataGridViewCell对象的ReadOnly属性为True即可实现。
- //DataGridView1的第二列只读
- DataGridView1.Columns[1].ReadOnly = true;
- //DataGridView1的第三行只读
- DataGridView1.Rows[2].ReadOnly = true;
- //DataGridView1的(0, 0)的单元格只读
- DataGridView1[0, 0].ReadOnly = true;
DataGridView的ReadOnly设定为True时,DataGridView内的所有行、列、单元格的ReadOnly会自动设定为True。同样,列或行的ReadOnly设定为True时,所设定的列或行的所有的单元格的ReadOnly会自动设定为True。
EditMode属性的使用
当DataGridView.EditMode属性设定为DataGridViewEditMode.EditProgrammatically时,用户就不能对单元格进行编辑。但是,在程序中DataGridView.BeginEdit对象触发时,单元格变为可以进行编辑。
- //用户不能编辑单元格
- DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically;
根据条件单元格不能编辑
这里所说的并不是每一个单元格的ReadOnly属性设定,而是使用CellBeginEdit事件处理器致使单元格不能编辑。如下面代码所示。
- //CellBeginEdit事件处理器
- private void DataGridView1_CellBeginEdit(object sender,
- DataGridViewCellCancelEventArgs e)
- {
- DataGridView dgv = (DataGridView)sender;
- //判断是否可以编辑
- if (dgv.Columns[e.ColumnIndex].Name == "Column1" &&
- !(bool)dgv["Column2", e.RowIndex].Value)
- {
- //编辑不能
- e.Cancel = true;
- }
- }
C# DataGridView中指定的单元格不能编辑的更多相关文章
- c#DataGridView数据绑定示例——格式化单元格的内容(转)
转自http://blog.csdn.net/testcs_dn/article/details/37834063 c#DataGridView数据绑定示例 格式化单元格的内容 在使用DataGrid ...
- C# 获取Excel中的合并单元格
C# 获取Excel中的合并单元格 我们在制作表格时,有时经常需要合并及取消合并一些单元格.在取消合并单元格时需要逐个查找及取消,比较麻烦.这里分享一个简单的方法来识别Excel中的合并单元格,识别这 ...
- iOS开发UI篇—在UITableview的应用中使用动态单元格来完成app应用程序管理界面的搭建
iOS开发UI篇—在UITableview的应用中使用动态单元格来完成app应用程序管理界面的搭建 一.实现效果 说明:该示例在storyboard中使用动态单元格来完成. 二.实现 1.项目文件结构 ...
- excel中,一系列单元格中包含某一个字段的单元格数量?
excel中,一系列单元格中包含某一个字段的单元格数量?这个怎么写公式?如:A列单元格A1-A7的内容分别为 A.AB.BC.AC.CD.AD.EA,怎么数这一列中几个单元格的内容包含A字母? 任意单 ...
- Excel 2010 Alt+; (分号) --- “只选定当前选定区域中的可视单元格”
excel怎样把筛选出来的加上颜色? 1.选中筛选结果数据区域: 2.同时按下Alt+; (分号)键,选中筛选出的数据: 3.鼠标右键,设置单元格格式: 4.在弹出的对话框中,设置字体.背景颜色,即可 ...
- 无法读取Excel中的数据单元格。有数据,但是读出来全是空值
C#读取Excel,取值为空的解决办法! C#读取Excel遇到无法读取的解决方法是什么呢?这样在C#读取Excel的过程中有很多问题,那么本文就向你介绍如何解决C#读取Excel遇到无法读取的解决方 ...
- Devexpress WinForm GridControl实现单元格可编辑状态更改
之前做项目的时候,需要实现这样的功能.在gridcontrol中,根据是否修改(checkbox)列的选中和未选中状态来联动另外一列的编辑状态.实现如下: private void gridView1 ...
- 【ABAP系列】SAP ABAP OOALV 动态设置单元格可否编辑
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP OOALV 动 ...
- excel设置单元格不可编辑
把允许编辑的单元格选定,右键-设置单元格格式-保护,把锁定前的对钩去掉.再点工具-保护工作表.这样就可以只让你刚才设定的单元格允许编辑,其他不允许.
随机推荐
- Angular 2 最终版正式发布
9月15日,Angular 2 的最终版正式发布了. 作为 Angular 1 的全平台继任者 -- Angular 2 的最终版,意味着什么? 意味着稳定性已经得到了大范围用例的验证: 意味着已经针 ...
- C语言 · 寻找数组中的最大值
问题描述 对于给定整数数组a[],寻找其中最大值,并返回下标. 输入格式 整数数组a[],数组元素个数小于1等于100.输出数据分作两行:第一行只有一个数,表示数组元素个数:第二行为数组的各个元素. ...
- enum操作--获取枚举里的最大值
一个应用系统,如果程序里没有任何enum的使用,我认为它的可读性是有待商榷的. 求枚举里的最大/最小枚举值, 其实是对Array进行操作: enum EnumTest { ddd = , eee } ...
- C#并行编程系列-文章导航
菜鸟初步学习,不对的地方请大神指教,参考<C#并行编程高级教程.pdf> 目录 C#并行编程-相关概念 C#并行编程-Parallel C#并行编程-Task C#并行编程-并发集合 C# ...
- iOS-应用闪退总结
一.之前上架的 App 在 iOS 9 会闪退问题(iOS系统版本更新,未配置新版本导致闪退问题) 最新更新:(2015.10.02) 开发环境: Delphi 10 Seattle OS X El ...
- Android中Bitmap,byte[],Drawable相互转化
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- 清除页面广告?身为前端,自己做一款简易的chrome扩展吧
大家肯定有这样的经历,浏览网页的时候,左右两端广告,诸如“屠龙宝刀,点击就送”,以及最近火的不行的林子聪37传奇霸业什么“霸业面具,霸业吊坠”的魔性广告总是充斥我们的眼球. 当然有现成的扩展程序或者插 ...
- iOS开发之窥探UICollectionViewController(三) --使用UICollectionView自定义瀑布流
上篇博客的实例是自带的UICollectionViewDelegateFlowLayout布局基础上来做的Demo, 详情请看<iOS开发之窥探UICollectionViewControlle ...
- Objective-C中把数组中字典中的数据转换成URL
可能上面的标题有些拗口,学过PHP的小伙伴们都知道,PHP中的数组的下标是允许我们自定义的,PHP中的数组确切的说就是键值对.而在OC我们要用字典(Dictionary)来存储,当然了Java用的是M ...
- MySQL半同步复制
从MySQL5.5开始,MySQL以插件的形式支持半同步复制.如何理解半同步呢?首先我们来看看异步,全同步的概念 异步复制(Asynchronous replication) MySQL默认的复制即是 ...