找回密码
 立即注册

QQ登录

只需一步,快速开始

sam
论坛元老   /  发表于:2012-5-18 11:17:00
61#
其实我也想过,在我们项目中默认初始化有一行,但是会有这种情况:
即,当用户查询数据时,没有一行数据时(即:空行)。这时,还是需要通过
新增行按钮来新增数据。这样又会回到之前的问题上(即:没有数据行,而直接新增行,会导致Ajax错误).

我现在只是需要:看能否在自定义单元格类型中,新增一个属性。看能否实现?

我的需求是不是蛮苛刻的啊?哈哈。
别人没有类似的需求吗?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-18 11:35:00
62#
看到你这样描述之后,我基本理解你的需求,也算是正常吧,必定客户有提出任何需求的权利。哈哈。

我这边先调试着,已有进展会立即与你沟通。
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-18 11:41:00
63#
OK。感谢!
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-18 15:49:00
64#
我再问个问题:
如果我需要在PopupCellType类型中使用FormatString来进行格式化内容,改如何实现?
比如,我要显示的数字为千分位的数字格式,改如何设置? (123,1234)

谢谢!
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-18 15:50:00
65#
即:FormatString的用法如何?能否给个例子来参考。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-18 17:53:00
66#
这样可以格式化数据:
  1.             PopupCellType popup = new PopupCellType(FpSpread1.ID, "ShowPopup()");
  2.             popup.NumberFormat = new System.Globalization.NumberFormatInfo();
  3.             popup.NumberFormat.NumberDecimalDigits = 3;
  4.             this.FpSpread1.ActiveSheetView.Columns[0].CellType = popup;
  5.             this.FpSpread1.ActiveSheetView.Cells[0, 0].Value = 12.123456;
复制代码
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-23 14:23:00
67#
嗨。增加自定义属性有结果啦吗?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-23 14:33:00
68#
现在还是无法实现

以上讨论的两个功能,只能满足其中一个,不能两个同时满足。
如果Spread始终至少有一行数据可以给PopupCellType添加属性;如果无法Spread可能没有数据,就无法给PopupCellType添加属性。

之前讨论过,查询之后可能没有数据,能不能在这种情况下给Spread添加一行空数据,这样一来无论在什么情况下Spread都至少有一行数据。
回复 使用道具 举报
sam
论坛元老   /  发表于:2012-5-23 22:46:00
69#
"如果Spread始终至少有一行数据可以给PopupCellType添加属性",这种该如何添加属性呢?
我要的不是从New 类型中创建,而是需要直接新增一个属性。
这样看如何实现?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-5-24 22:00:00
70#
在Spread中至少有一行数据的前提下,我修改了PopupCellType,增加了一个OnPopup属性,通过该属性来设置调用的JS方法名称
  1.         public string OpPopup
  2.         {
  3.             get { return _onPopup; }
  4.             set { _onPopup = value; }
  5.         }
复制代码
同时,修改了使用PopupCellType的方法:
  1.         protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (!IsPostBack)
  4.             {
  5.                 this.FpSpread1.ActiveSheetView.RowCount = 1;
  6.                 DateCalendarCellType datecellType = new DateCalendarCellType();
  7.                 datecellType.DateFormat = "yyyy-MM-dd";
  8.                 this.FpSpread1.ActiveSheetView.Columns[1].CellType = datecellType;
  9.             }

  10.             PopupCellType popup = new PopupCellType();
  11.             popup.OpPopup = "ShowPopup()";
  12.             this.FpSpread1.ActiveSheetView.Columns[0].CellType = popup;
  13.         }
复制代码
源码下载:VS2010 + Spread for WinForms V6.0.3505.2008
PopupCellTypeDemo_Modal.zip (892.76 KB, 下载次数: 234)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部