请选择 进入手机版 | 继续访问电脑版
cccc
金牌服务用户   /  发表于:2025-12-24 10:49  /   查看:42  /  回复:5
spread首列为复选框列,某行我勾选后,接着取消勾选,没有触发取消勾选的事件。如图:


背景:勾选某行,该行索引值赋值给当前行索引变量curRowUnits,接着马上取消勾选,但程序没有触发响应(else条件没有执行)。

c# 源代码如下:
private void fpSpUnits_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
  {
            if (e.Column == 0)
            {
                if (curRowUnits != e.Row)
                {
                    curRowUnits = e.Row;
                }
                else
                {
                    MessageBox.Show("不好意思,不能连续勾选同一行");  // 问题,这个else 没有触发,为什么呢?怎么解决?
                }
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

5 个回复

Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-12-24 15:45:56
沙发
是else条件没有执行,还是压根没有进入CellClick事件里面,你可以在事件中的开头处先打断点看看
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2025-12-24 16:16:37
板凳
Richard.Ma 发表于 2025-12-24 15:45
是else条件没有执行,还是压根没有进入CellClick事件里面,你可以在事件中的开头处先打断点看看

CellClick事件里面 ,当切换不同行,if条件执行了,同一行再次勾选,else不执行
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-12-24 17:58:34
地板
对于普通单元格你应该用CellClick,对于按钮,复选框类型的单元格,需要用ButtonClicked事件来替代,
回复 使用道具 举报
cccc
金牌服务用户   /  发表于:2025-12-25 13:44:31
5#
Richard.Ma 发表于 2025-12-24 17:58
对于普通单元格你应该用CellClick,对于按钮,复选框类型的单元格,需要用ButtonClicked事件来替代,

好的,按您的方法,问题已解决,非常感谢
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-12-25 14:06:13
6#
不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部