找回密码
 立即注册

QQ登录

只需一步,快速开始

xxglyy

注册会员

2

主题

5

帖子

19

积分

注册会员

积分
19
最新发帖
xxglyy
注册会员   /  发表于:2016-8-24 17:50  /   查看:4822  /  回复:2
spread中我想对worksheet中一个区域进行锁定,按现有方法中:
  this.Spreadsheet1.Sheets[0].Protect = true;
this.Spreadsheet1.Sheets[0].Cells[0,0].Locked=false;
的做法会使得我要达到这个目的浪费很多资源,我要去设置我要的区域以外的所有单元格、

1、请问有什么办法只设置我需要锁定的单元格吗?
2、样式设置问题,控件提供方法中只能进行一个单元格一个单元格设置吗?有区域一次性设置方法没有?
 

2 个回复

倒序浏览
xxglyy
注册会员   /  发表于:2016-8-24 17:52:53
沙发
纠正一下上面提问题内容:
spread中我想对worksheet中一个区域进行锁定,按现有方法中:
  this.Spreadsheet1.Sheets[0].Protect = true; //锁定整个worksheet
解除锁定
this.Spreadsheet1.Sheets[0].Cells[0,0].Locked=false; //解锁一个单元格
这样的做法会使得我要达到这个目的(我只想锁定我想锁定区域,可能只有200*20一个区域)浪费很多资源,我要去设置我要的区域以外的所有单元格、
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-8-25 08:44:52
板凳
您好,通过DefaultStyle 可以设置默认locked 为false,这样,所有的cell都是unlock,然后你再设置200*20的为true

  1.             gcSpreadSheet1.ActiveSheet.DefaultStyle.Locked = false;
  2.             gcSpreadSheet1.ActiveSheet.Cells[0, 0, 200, 20].Locked = true;
  3.             gcSpreadSheet1.ActiveSheet.Protect = true;
复制代码

评分

参与人数 1满意度 +5 收起 理由
xxglyy + 5 很给力!

查看全部评分

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