找回密码
 立即注册

QQ登录

只需一步,快速开始

lud
论坛元老   /  发表于:2012-2-24 18:05  /   查看:5476  /  回复:4
在单元格里输入数据之后,点击保存,保存不进去呀(求FpSpread1_UpdateCommand 的使用方法)

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-2-27 08:53:00
沙发
lud 你好,

1.你的操作步骤是正确的。

2.我这里没有重现你的问题,可以尝试重新拖拽 Spread ,添加 FpSpread1_UpdateCommand 事件。

3.下面是我的 Demo:
3451.zip (2.77 MB, 下载次数: 269)
回复 使用道具 举报
lud
论坛元老   /  发表于:2012-2-27 09:49:00
板凳
我看了论坛里的保存方法,吸取了经验做了保存,这里有两点恳求版主给家解答:1.设置客户端公式运行,输入数据不能保存;2.取消设置客户端公式运行,输入几个单元格,但是最后一个单元格保存不到数据库里
回复 使用道具 举报
lud
论坛元老   /  发表于:2012-2-27 09:51:00
地板
补充一下,我设置clientautocalculate=true 之后想让公式重新计算,但是影响输入数据保存,请问还有什么属性可以使公式自动运行
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-2-27 10:44:00
5#

回复 4# lud 的帖子

lud 你好,
1.设置 Runtime 公式自动计算只有一种方法:
  1.             this.FpSpread1.EnableAjaxCall = true;
  2.             this.FpSpread1.ClientAutoCalculation = true;
复制代码

2.4# 中的影响输入数据保存是否指的是每次完成单元格输入都要调用 UpdateCommand 事件?从而影响保存?我的操作方法为判断字段对应的 editvalue 是否为空,如果为空就设置 sql 语句中的对应字段值为原 Cell 值。代码如下:
  1. int _row = (int)e.CommandArgument;
  2.             string _key = this.FpSpread1.ActiveSheetView.Cells[_row, 0].Text;
  3.            
  4.             string col1 = e.EditValues[1].ToString();
  5.             string col2 = e.EditValues[2].ToString();
  6.             if (col1 == "System.Object")
  7.             {
  8.                 col1 = this.FpSpread1.Sheets[0].Cells[_row, 1].Text;
  9.             }
  10.             if (col2 == "System.Object")
  11.             {
  12.                 col2 = this.FpSpread1.Sheets[0].Cells[_row, 2].Text;
  13.             }
  14.             AccessDataSource1.UpdateCommand = "Update Table1 Set Col1=" + col1 + "," + "Col2=" + col2 + " Where ID=" + _key;
  15.             AccessDataSource1.Update();
复制代码

3.不好意思,问题 2 的问题我并没有重现,请你发 Demo 到论坛调试。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部