找回密码
 立即注册

QQ登录

只需一步,快速开始

dapsjj
初级会员   /  发表于:2016-11-29 16:23  /   查看:3357  /  回复:3
grdMain.ActiveSheet.DataSource = ds;//grdMain绑定数据源ds是 Dataset类型
使用这一句代码过后,发现spread的单元编辑金额,数量等数字类型的字段后,不能输入字母了,如果不加这句代码时,金额,数量等数字类型的字段可以输入字母,请问这种实现方式是spread的什么机制?输入的类型自动绑定了数据库的字段的类型了吗?

3 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-11-29 19:15:09
沙发
自动绑定的时候会根据数据类型自动设定celltype
如果不希望自动设定可以通过如下代码指定


            fpSpread1.ActiveSheet.AutoGenerateColumns = false;
            fpSpread1.ActiveSheet.Columns[0].DataField = "IsChecked";
            fpSpread1.ActiveSheet.Columns[0].CellType = new CheckBoxCellType();
回复 使用道具 举报
dapsjj
初级会员   /  发表于:2016-11-30 08:09:55
板凳
dexteryao 发表于 2016-11-29 19:15
自动绑定的时候会根据数据类型自动设定celltype
如果不希望自动设定可以通过如下代码指定

您好,您的这3行代码能否给加个注释呢?我不明白这3行代码的意思,能稍微给解释下吗?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-11-30 08:31:25
地板
  1.             //不根据dt自动生成列
  2.             fpSpread1.ActiveSheet.AutoGenerateColumns = false;
  3.             //设置第一列绑定ds中列名
  4.             fpSpread1.ActiveSheet.Columns[0].DataField = "IsChecked";
  5.             //第一列的单元格类型
  6.             fpSpread1.ActiveSheet.Columns[0].CellType = new CheckBoxCellType();
  7.             //第二列绑定的列名
  8.             fpSpread1.ActiveSheet.Columns[1].DataField = "IsChecked";
  9.             //第二列单元格类型
  10.             fpSpread1.ActiveSheet.Columns[2].CellType = new DateTimeCellType();
复制代码

评分

参与人数 1满意度 +5 收起 理由
dapsjj + 5 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部