请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

tashion

中级会员

2

主题

6

帖子

822

积分

中级会员

积分
822
最新发帖
tashion
中级会员   /  发表于:2015-12-10 09:38  /   查看:9600  /  回复:12
Fpspread 的celltype 为文本格式,但是有Value和Text属性,可分别赋值,前台显示和后台传递的值不同

12 个回复

倒序浏览
Helen
高级会员   /  发表于:2015-12-10 17:19:00
沙发
回复 1楼tashion的帖子

您好!
不太明白您的意思。
我看咱们是在WinForms平台发帖,但是问题涉及前台和后台,您是想询问Spread ASP.NET的问题吗?
如果是ASP.NET的问题,请将您的实际使用程序上传,以便我们及时协助您解决您的具体问题。
谢谢!
回复 使用道具 举报
tashion
中级会员   /  发表于:2015-12-15 16:25:00
板凳
WINFORM 下面的FPSPREAD, CELLTYPE如果是TEXT文本格式,那么 这个CELL有TEXT和VALUE两个值,如果我只给value赋值,那么 TEXT和VALUE显示的都是VALUE的值,现在问题,我如何给TEXT和VALUE分别赋值呢?cell格式是文本格式  Fpspread1.Sheet[0].Cell[0,0].Text和Fpspread1.Sheet[0].Cell[0,0].Value显示不同的值
回复 使用道具 举报
tashion
中级会员   /  发表于:2015-12-15 16:26:00
地板
回复 2楼Helen的帖子

或者有没有外观和文本格式一样的CEllTYPE,可以对text和value分辨赋值?
回复 使用道具 举报
frank.zhang
社区贡献组   /  发表于:2015-12-15 17:55:00
5#
您好,

非常抱歉,目前Spread不支持您描述的单元格。

主要原因是通常Key对应value,对于key是有一个范围的。如果是文本这个范围无法控制,所以没有能够实现。
您的项目有这样的需求,可以在后台提交key的时候,做一个转换。
回复 使用道具 举报
ghostlyt
初级会员   /  发表于:2015-12-15 22:03:00
6#
TEXT与Value是什么样的对应关系?
可以通过自定义CellType,通过重载Format和Parse方法实现实际的Value与表现的Text值不相同,
但前提是要有明确的转换规则。
回复 使用道具 举报
frank.zhang
社区贡献组   /  发表于:2015-12-16 14:37:00
7#
您好,

text和value目前没有对应关系,您可以通过map这样的数据结构进行映射。
回复 使用道具 举报
tashion
中级会员   /  发表于:2015-12-16 15:36:00
8#
是的呢。Value和TEXT无法单独赋值 也不好对应,现在项目就是遇到前台显示text和后台给的Value不一样的情况,就是嫌存储过程 调用函数转换 没有这个简单的,如果不能对text和value单独赋值,那么这个文本格式为什么要用两个呢,为什么不只能使用text 或者只使用Value,现在在代码里面都是给text和value单独赋值的,值都是一样的。后面取cell值 也要注意 取text还是value的值。给个建议:要么文本格式 只用一个text或者只用 value,如果text和value属性都有,则可以分别给text和value赋值,如果只有value值, 没有text值,则以value值为准,定义这种机制会方便好多的。
回复 使用道具 举报
ghostlyt
初级会员   /  发表于:2015-12-16 20:08:00
9#
回复 8楼tashion的帖子

Spread的设计是 【数据-表示】 模型,Value代表的是实际存储的数据,Text是根据预定义的规则将Value转换后的文本。转换的规则就存在于各CellType中。
如果这个转换规则不确定,比如你说的需要调用外部函数进行转换,那么Spread自身就无法实现相应功能。
回复 使用道具 举报
rbgongming
论坛元老   /  发表于:2015-12-17 09:06:00
10#
回复 9楼ghostlyt的帖子

你好,如果CellType是文本类型的话,Text和Value应该不会有什么区别吧
就如你上面说的一样,Value代表的是实际存储的数据,Text是根据预定义
的规则将Value转换后的文本。比如类型是数值类型的,你赋给这个单元格
12345,画面上显示的是12,345,这个时候你用Text取出来的「12,345」而
value取出来的值是「12345」,也就是说画面显示什么,Text取出来的就是
什么,还有Checkbox类型也不同,所以为了安全,代码中取值和赋值只要统
一就可以,不要一会用Text一会用Value。

希望可以帮您解决问题!

评分

参与人数 1金币 +999 收起 理由
frank.zhang + 999 协助回答问题

查看全部评分

把简单的事做好就是不简单,
把平凡的事做好就是不平凡。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部