找回密码
 立即注册

QQ登录

只需一步,快速开始

noahark

论坛元老

62

主题

173

帖子

7139

积分

论坛元老

积分
7139

活字格认证

noahark
论坛元老   /  发表于:2013-11-7 09:38  /   查看:6257  /  回复:5
您好,应需求,表格需要全行选中,第一列是复选框。
可我把属性 OperationMode的值设置为SingleSelect之后,复选框就点不了。

QQ截图20131107093746.jpg (49.23 KB, 下载次数: 133)

5 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2013-11-7 11:19:00
沙发
回复 1楼noahark的帖子

SingleSelect 仅用于选择,无法编辑。可以使用以下枚举:

  1.             FpSpread1.ActiveSheetView.OperationMode = FarPoint.Web.Spread.OperationMode.RowMode;

复制代码
回复 使用道具 举报
noahark
论坛元老   /  发表于:2013-11-7 13:54:00
板凳
回复 2楼iceman的帖子

用RowMode之后即不是全行选中,又出现了其他单元格可编辑了。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-11-7 14:30:00
地板
回复 3楼noahark的帖子

RowMode 是以行为单位进行显示的,或者是我理解的“行选择”概念和你不同?

Demo1.gif

如果需要仅仅使第一列可选,需要锁定其他列:
  1. protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (IsPostBack)
  4.             {
  5.                 return;
  6.             }
  7.             FarPoint.Web.Spread.CheckBoxCellType ck = new FarPoint.Web.Spread.CheckBoxCellType();
  8.             ck.Text = "True/False";
  9.             ck.TextAlign = TextAlign.Left;

  10.             SheetView sv = FpSpread1.ActiveSheetView;
  11.             sv.Columns[0].CellType = ck;

  12.             sv.OperationMode = FarPoint.Web.Spread.OperationMode.RowMode;
  13.             int columnCount = sv.ColumnCount;

  14.             for (int i = 1; i < columnCount; i++)
  15.             {
  16.                 sv.Columns[i].Locked = true;
  17.             }
  18.         }
复制代码
回复 使用道具 举报
noahark
论坛元老   /  发表于:2013-11-7 14:48:00
5#
回复 4楼iceman的帖子

恩,用锁定的搞定了。
在前台js能获取到哪些复选框被选中了吗?如何获取呢?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-11-7 16:26:00
6#
回复 5楼noahark的帖子

只能通过遍历,让后判断单元格的值。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部