C# DevExpress控件, GridControl中复选框值改变事件
C#DevExpress控件,GridControl中添加复选框,即repositoryItemCheckEdit。点击复选框,打上勾之后,当人为离开焦点后才会响应Cel...
C# DevExpress控件, GridControl中添加复选框,即repositoryItemCheckEdit。点击复选框,打上勾之后,当人为离开焦点后才会响应CellValueChanged事件,还有一点就是手动设置SetCellValue这个方法的时候也会响应CellValueChanged事件
我的实现效果:如:GridView中有10条数据,当点击复选框时文本框马上加1,取消时马上减1。现在唯一的困惑就是无法捕获到复选框值改变后的及时事件,不希望人为的去离开焦点。看过控件的原始Demo,也是需要人为去离开焦点后才会响应。
望有知情者帮下忙,感激不尽。
WinForm 展开
我的实现效果:如:GridView中有10条数据,当点击复选框时文本框马上加1,取消时马上减1。现在唯一的困惑就是无法捕获到复选框值改变后的及时事件,不希望人为的去离开焦点。看过控件的原始Demo,也是需要人为去离开焦点后才会响应。
望有知情者帮下忙,感激不尽。
WinForm 展开
6个回答
展开全部
DevExpress没用过,只是看过,GridControl是和DataGridView控件类似的
按照DataGridView控件的使用经验来说吧
1.直接注册复选框的事件--
找出复选框所在的列,遍历这一列中的所有行
为每一个复选框注册CheckedChange事件
一般这种复选框都一般都是重写过的,是与单元格合在一起的,也就是可能是CheckBoxCell,而不是CheckBox,最简单的办法就是加断点调试一下,看看那一列到中的每个单元格底是什么类型
2.注册单元格的点击事件【CellMouseClick】,还有一个CellContentMouseClick,估计这个用不上,以前也试过,最后用CellMouseClick实现的
上面2个基本就够了,其他的方法可能要比上面2个复杂得多
以前我查资料的时候有人说用鼠标钩子,这是下下策,实在没辙了才用这些东西
一般不用考虑钩子之类的,功能是很强,但用钩子还不如自己重写个Cell方便
按照DataGridView控件的使用经验来说吧
1.直接注册复选框的事件--
找出复选框所在的列,遍历这一列中的所有行
为每一个复选框注册CheckedChange事件
一般这种复选框都一般都是重写过的,是与单元格合在一起的,也就是可能是CheckBoxCell,而不是CheckBox,最简单的办法就是加断点调试一下,看看那一列到中的每个单元格底是什么类型
2.注册单元格的点击事件【CellMouseClick】,还有一个CellContentMouseClick,估计这个用不上,以前也试过,最后用CellMouseClick实现的
上面2个基本就够了,其他的方法可能要比上面2个复杂得多
以前我查资料的时候有人说用鼠标钩子,这是下下策,实在没辙了才用这些东西
一般不用考虑钩子之类的,功能是很强,但用钩子还不如自己重写个Cell方便
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
repositoryItemCheckEdit1_CheckedChanged
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按你说的要求,使用ajax技术,效果会比较好.不过你非要这么做的话,倒也行...复选框不是有单击事件吗? 写个单击事件,在事件内部处理你的逻辑.比方说你选了足球,在你的逻辑代码中,获得足球这俩字.. 然后返回给页面就行了..初学的话, 还是老老实实先按书上的来吧. 弄懂原理之后,用什么方法实现. 那都是其次了.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
坚持wr60 1 分钟前
run 设计
SelectionChanged试试这个 亲测好用
run 设计
SelectionChanged试试这个 亲测好用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询