找回密码
 立即注册

QQ登录

只需一步,快速开始

guxinghan

论坛元老

14

主题

38

帖子

4996

积分

论坛元老

积分
4996

活字格认证

guxinghan
论坛元老   /  发表于:2014-9-23 14:21  /   查看:5013  /  回复:3
我现在有个需求,一个单元格需要对数字进行格式化,999,999.99 这种类型
我的设置如下:
FarPoint.Web.Spread.DoubleCellType g = new FarPoint.Web.Spread.DoubleCellType();
            System.Globalization.NumberFormatInfo nfi = new System.Globalization.NumberFormatInfo();
            nfi.NumberDecimalDigits = 3;
            nfi.NumberDecimalSeparator = ",";
            g.NumberFormat = nfi;
            FpSpread1.ActiveSheetView.Cells[0, 0].CellType = g;

现在 ,单元格如果输入9999.99,会提示输入错误,不能正常输入
请帮忙解决一下,谢谢。

另外,如果能够正常输入,那么输入的数据,能够自动格式化吗?
比如输入99999.99 显示999,99.99

3 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-9-23 20:16:00
沙发
回复 1楼guxinghan的帖子

NumberDecimalSeparator 属性用于设置小数标识符,需要做以下修改:

  1.             nfi.NumberDecimalSeparator = ".";
复制代码


为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢

评分

参与人数 1满意度 +5 收起 理由
guxinghan + 5 输入问题能够解决

查看全部评分

回复 使用道具 举报
guxinghan
论坛元老   /  发表于:2014-9-24 10:00:00
板凳
可以正常输入了,但是输入的数据不能自动显示成三位用逗号隔开的形式,请问能解决吗?
999999.99-〉999,999.99
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-9-24 16:20:00
地板
回复 3楼guxinghan的帖子

更改文本格式是需要后台引擎做的,可以抓取每次编辑结束事件 FpSpread1_EditStopped 调用前台 Update 方法:

  1.     <script language="javascript" type="text/javascript" id="FpSpread1_Script0">
  2.                 function FpSpread1_EditStopped(event){
  3.                     //Add code to handle your event here.
  4.                     var spread = document.getElementById("FpSpread1");
  5.                     spread.Update();
  6.                 }
  7.         </script>
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部