找回密码
 立即注册

QQ登录

只需一步,快速开始

cccdl

中级会员

12

主题

34

帖子

800

积分

中级会员

积分
800

活字格认证

cccdl
中级会员   /  发表于:2012-5-24 13:50  /   查看:6569  /  回复:8
现在有一个单元格,规定的入力整数值最大只能是99999
如果表格初始化的时候读入的数据超过99999, 那么自动变成99999

给提供个思路看看

追加问题:这么处理,cell的value属性并没有变成99999, 仍然是程序设定的,比如120000。
Celltype的类不能改到cell的value。

8 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-24 15:03:00
沙发
这类功能可以通过自定义CellType来实现,比如通过下面的代码来控制:
  1.     public class MyCellType : FarPoint.Win.Spread.CellType.NumberCellType
  2.     {
  3.         public override string Format(object obj)
  4.         {
  5.             Int32 value = Convert.ToInt32(obj.ToString());
  6.             if (value > MaximumValue)
  7.             {
  8.                 obj = MaximumValue;
  9.             }
  10.             else if (value < MinimumValue)
  11.             {
  12.                 obj = MinimumValue;
  13.             }
  14.             return base.Format(obj);
  15.         }
  16.     }
复制代码
回复 使用道具 举报
cccdl
中级会员   /  发表于:2012-5-24 15:13:00
板凳
原帖由 dof 于 2012-5-24 15:03:00 发表
这类功能可以通过自定义CellType来实现,比如通过下面的代码来控制:
[code]    public class MyCellType : FarPoint.Win.Spread.CellType.NumberCellType
    {
        public override string Format(object o......

收到,感谢,我试试看。
不知道这个方式是否能处理程序设定的Value值……
回复 使用道具 举报
cccdl
中级会员   /  发表于:2012-5-24 15:36:00
地板
原帖由 cccdl 于 2012-5-24 15:13:00 发表
收到,感谢,我试试看。
不知道这个方式是否能处理程序设定的Value值……


能处理,应该没问题了,再次表示感谢~!:hug
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-24 16:41:00
5#
客气了
回复 使用道具 举报
cccdl
中级会员   /  发表于:2012-5-25 12:05:00
6#
追加问题:这么处理,cell的value属性并没有变成99999, 仍然是程序设定的,比如120000。
在celltype里能处理这个么?

现在拍脑袋想出来的方法是:
tempCell.Value = tempCell.CellType.Parse(tempCell.CellType.Format(pInfoDto.CurrValue))
这是在用上边提供的思路自定义celltype之后,赋值的时候再写成这个样子。

不知道你看了什么感觉,我感觉很扯淡……
回复 使用道具 举报
admin讲师达人认证 悬赏达人认证 活字格认证 SpreadJS 开发认证
管理员   /  发表于:2012-5-25 14:57:00
7#
CellType不能自动设置Cell.Value为MaximumValue,MaximumValue只能限制用户输入的最大值

你的需求处理你所描述方法外,就是先对设置给Cell的值进行有效性验证,如果不符合要求就进行调整,然后再设置给Cell
回复 使用道具 举报
cccdl
中级会员   /  发表于:2012-5-25 17:18:00
8#
原帖由 admin 于 2012-5-25 14:57:00 发表
CellType不能自动设置Cell.Value为MaximumValue,MaximumValue只能限制用户输入的最大值

你的需求处理你所描述方法外,就是先对设置给Cell的值进行有效性验证,如果不符合要求就进行调整,然后再设置给Cell

admin你好,谢谢你提供的帮助。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-28 09:54:00
9#
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部