找回密码
 立即注册

QQ登录

只需一步,快速开始

zhbchwin

注册会员

4

主题

26

帖子

126

积分

注册会员

积分
126

活字格认证

最新发帖
zhbchwin
注册会员   /  发表于:2015-6-29 22:28  /   查看:8465  /  回复:5
现象:Cell编辑模式,点击其他行的Cell时会做Check(RowLeave),check通过后,会把所点的那个cell所在的行相关的内容显示到另一个MultiRow中。
要求:一个Cell的内容改变之后,点击其他行的Cell时会做Check,如果check出错的话,不让点中其他行的cell,保留原来的状态。
111 2
21(CurrentCell)(内容出错) 22

点击第一行第二列的Cell,不想让第一行第二列的Cell处于选中状态,还是保留第二行第一列的为选中状态。


有没有e.Cancel或e.Handled类似的处理。


另外,上面的操作走了几次RowLeave?

5 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-6-30 09:31:00
沙发
回复 1楼zhbchwin的帖子

感谢对该问题的反馈。
从你的描述来看,可以参考gcMultiRow提供的Validate 单元格值的功能。
你可以添加CellValidators到集合,然后指定CellValidator's CellValidator.Action.而且在每个CellValidateAction中,你还可以通过CellValidateAction.DoActionReason 指定在什么情况下执行这种校验的行为。

有关校验,你可以参考我们的产品文档,路径如下:
C:\Program Files (x86)\GrapeCity\Spread Studio 8\Docs\MultiRow
在文档中的索引:MultiRow Windows Forms > Developer's Guide > Using MultiRow > User Input Validation

另外有关你提到的RowLeave走了几次,我不太理解你的意思,是在执行这句代码中出现了什么样的问题么?
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
zhbchwin
注册会员   /  发表于:2015-6-30 10:19:00
板凳
回复 2楼Alice的帖子

谢谢回答,我试一下。

RowLeave走了几次的问题,不了解MultiRow处理事件的流程。
假设从Cell 21到Cell12应该是走1次RowLeave吧,现在debug发现走了两次RowLeave。
难道又跟Me.Cursor处理有关?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-6-30 14:24:00
地板
回复 3楼zhbchwin的帖子

离开行的时候,会触发RowLeave事件。
根据你的描述来看,此问题和另一个问题类似,不是单纯挂上事件进行点击的时候就会产生,而是受到你代码逻辑的影响。
因此建议你提供此段代码给我们,我们帮你看看,排除影响。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
zhbchwin
注册会员   /  发表于:2015-6-30 23:30:00
5#
回复 4楼Alice的帖子

简单的Demo试了一下,RowLeave应该只走一次。
自己的画面有3个MultiRow,之间有联动,可能影响了。自己加Flag控制吧。
check 之后中断的处理,在RowValidating里做了,可以用e.Cancel = True实现。
不过这时点其他的按钮一直会走RowLeave和RowValidating,由于一直错误,一直执行e.Cancel = True,所以不能操作其他处理了,只能把数据改对了才能响应其他处理。
我的解决方案是在RowValidating里的最开始加上下面的处理。
If Me.GcMultiRow1.ContainsFocus = False Then
    Exit Sub
End
不知道这样是否正常,会不会导致其他问题。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-7-1 12:14:00
6#
回复 5楼zhbchwin的帖子

谢谢你的反馈。
根据你的描述,我并不了解您的整个代码逻辑,并不能推断会不会有其他的异常产生,这还需要你对代码进行检测。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

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