找回密码
 立即注册

QQ登录

只需一步,快速开始

坚持自己的不举

论坛元老

8

主题

18

帖子

5576

积分

论坛元老

积分
5576
坚持自己的不举
论坛元老   /  发表于:2015-11-4 18:08  /   查看:6550  /  回复:5
比如DBGrid里有多条数据需要结算,但是第一条明细我已经结清了,就不让客户再更改数据了,怎么让第一行不能被编辑呢?

5 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-11-5 10:46:00
沙发
回复 1楼坚持自己的不举的帖子

感谢您的反馈。
在FetchCellStyle事件是设置e.CellStyle.Locked为true,该单元格就不能编辑。

因此首先需要设置C1TrueDBGrid的Splits[0].DisplayColumns所有列的FetchStyle为true。
然后通过如下代码设置不可编辑:
  1.         void c1TrueDBGrid1_FetchCellStyle(object sender, C1.Win.C1TrueDBGrid.FetchCellStyleEventArgs e)
  2.         {
  3.             if (e.Row == 0)
  4.             {
  5.                 e.CellStyle.Locked = true;
  6.             }
  7.         }
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
坚持自己的不举
论坛元老   /  发表于:2015-11-5 14:25:00
板凳
回复 2楼Alice的帖子

谢谢,问题解决了
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-11-5 15:20:00
地板
回复 3楼坚持自己的不举的帖子

非常感谢您的反馈。
您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
坚持自己的不举
论坛元老   /  发表于:2015-11-5 17:33:00
5#
回复 4楼Alice的帖子

如果是几条数据(也就是几行)不能编辑,怎么设置呢? 比如C1trueDBGrid.spilts[0].Rows[i,"status"].tostring().equal("1")的数据?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-11-6 09:32:00
6#
回复 5楼坚持自己的不举的帖子

您可以根据2楼的代码添加自己的业务逻辑。
写不同的判断就可以,if语句可以或也可以与,可以判断是第一行,也可以判断值。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部