找回密码
 立即注册

QQ登录

只需一步,快速开始

home5p
论坛元老   /  发表于:2011-12-2 10:26:00
11#
这是我的js写法:

function FPD1_DataChanged(fp_obj) {
    var act_row = fp_obj.ActiveRow;
    var act_col = fp_obj.ActiveCol;

    //16为隐藏栏位
    if (fp_obj.GetValue(act_row, 16) != 'A') {
        fp_obj.SetValue(act_row, 16, "U", true);
    }
   
   //FP1_COL_OUTFLG 为一个ComboBoxCellType
    if (act_col == FP1_COL_OUTFLG) { fp_obj.SetValue(act_row, 16, "U", true); }
    fp_obj.UpdatePostbackData();
    fp_obj.CallBack("Update");
}
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2011-12-2 15:41:00
12#

回复 11# home5p 的帖子

你好,不好意思,这么久才回复,可以对 ComboBoxCellType 设置为 true 的类型添加以下代码,让事件先走前台代码:

  1. FarPoint.Web.Spread.ComboBoxCellType c1 = new FarPoint.Web.Spread.ComboBoxCellType();
  2. //FPD1_DataChanged 前台 JS 赋值函数
  3. c1.OnClientChanged = "FPD1_DataChanged()";
复制代码
回复 使用道具 举报
wangleiecho
中级会员   /  发表于:2012-3-16 10:41:00
13#
winform的能实现此功能吗?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-16 11:46:00
14#

回复 13# wangleiecho 的帖子

wangleiecho 你好,可以通过以下方式实现
  1.         private void Form1_Load(object sender, EventArgs e)
  2.         {
  3.             FarPoint.Win.Spread.CellType.ComboBoxCellType comboBoxCellType1 = new FarPoint.Win.Spread.CellType.ComboBoxCellType();
  4.             comboBoxCellType1.Items = (new String[] { "1", "2", });
  5.             fpSpread1.Sheets[0].Cells[2, 1].CellType = comboBoxCellType1;
  6.             comboBoxCellType1.EditorValueChanged += new EventHandler(comboBoxCellType1_EditorValueChanged);
  7.             FarPoint.Win.Spread.CellType.ComboBoxCellType comboBoxCellType2 = new FarPoint.Win.Spread.CellType.ComboBoxCellType();
  8.             comboBoxCellType2.Items = (new String[] { "1", "2", });
  9.             fpSpread1.Sheets[0].Cells[2, 2].CellType = comboBoxCellType2;
  10.         }
  11.         void comboBoxCellType1_EditorValueChanged(object sender, EventArgs e)
  12.         {
  13.             FarPoint.Win.Spread.CellType.ComboBoxCellType test = sender as FarPoint.Win.Spread.CellType.ComboBoxCellType;
  14.             if (this.fpSpread1.Sheets[0].Cells[2,1].Text=="1")
  15.             {
  16.                 this.fpSpread1.Sheets[0].Cells[2, 2].Locked = true;
  17.             }
  18.             if (this.fpSpread1.Sheets[0].Cells[2, 1].Text == "2")
  19.             {
  20.                 this.fpSpread1.Sheets[0].Cells[2, 2].Locked = false;
  21.             }
  22.         }
复制代码
回复 使用道具 举报
wangleiecho
中级会员   /  发表于:2012-3-16 14:12:00
15#
哦 明白了 多谢版主
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-16 14:19:00
16#

回复 15# wangleiecho 的帖子

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