找回密码
 立即注册

QQ登录

只需一步,快速开始

ballaflying
论坛元老   /  发表于:2011-1-17 12:36  /   查看:6104  /  回复:2
Cell[2,1]Number类型。我在_LeaveCell函数中做了判断不能为Nothing。如果我Tab在Cell[2,1],我想改Cell[2,0]的值,就会报不能为空的错,而且Tab只能在那个Cell中。就是进去这个Cell不输入值就出不来了。能不能设置一下。可以修改之前输入过的Cell的值

2 个回复

倒序浏览
barrylei
中级会员   /  发表于:2011-1-17 13:12:00
沙发

回复 1# ballaflying 的帖子

你可以结合判空,和判断CellPosition来同时使用,LeaveCell事件中有NewPosition属性,它指的是即将要进入的目标Cell的位置,下面的代码简单的演示了一下,如果我要进入的Cell的TabIndex比我当前的小,就可以进入,如果大,就不能进入。当然,具体的业务逻辑还得你自己写,TabIndex小不代表它就有值,就可以进入,下面的Code只是个思路,使用它应该可以解决你的问题。

  1.         private void multiRowSheet1_LeaveCell(object sender, GrapeCity.Win.ElTabelle.MLeaveCellEventArgs e)
  2.         {
  3.             if(this.multiRowSheet1[this.multiRowSheet1.ActivePosition].TabIndex < this.multiRowSheet1[e.NewPosition].TabIndex)
  4.             {
  5.                 e.Cancel =true;
  6.             }
  7.         }
复制代码
回复 使用道具 举报
ballaflying
论坛元老   /  发表于:2011-1-17 13:36:00
板凳
好的。我也这么想过,但就是不知道具体怎么写。太感谢啦!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部