找回密码
 立即注册

QQ登录

只需一步,快速开始

dkings

注册会员

7

主题

19

帖子

173

积分

注册会员

积分
173

活字格认证

最新发帖
dkings
注册会员   /  发表于:2016-9-22 13:23  /   查看:4576  /  回复:4
本帖最后由 dkings 于 2016-9-22 13:24 编辑

this.GcSpreadSheet1.ActiveSheet.DefaultStyle.Locked = false;this.GcSpreadSheet1.ActiveSheet.Cells[0, 0, this.GcSpreadSheet1.ActiveSheet.RowCount - 1, this.GcSpreadSheet1.ActiveSheet.ColumnCount - 1].Locked = false;
this.GcSpreadSheet1.ActiveSheet.Protect = true;
设置后行高列宽无法设置了
试了下面的方式处理还是无法编辑


            this.GcSpreadSheet1.ActiveSheet.RowHeader.DefaultStyle.Locked = false;
            this.GcSpreadSheet1.ActiveSheet.ColumnHeader.DefaultStyle.Locked = false;
            this.GcSpreadSheet1.ActiveSheet.ColumnHeader.Cells[0, 0,  - 1, this.GcSpreadSheet1.ActiveSheet.ColumnCount - 1].Locked = false;
            this.GcSpreadSheet1.ActiveSheet.RowHeader.Cells[0, 0, this.GcSpreadSheet1.ActiveSheet.RowCount - 1, -1].Locked =  false;



4 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-9-22 14:21:04
沙发
您好,设置保护后列宽就不能调整了,
这个在wpf中没有属性可以设置允许在保护状态下调整列宽。

有一个变通的办法是,在编辑开始事件中取消编辑,这样做也是保护。

  1.         private void GcSpreadSheet1_EditStarting(object sender, EditCellStartingEventArgs e)
  2.         {
  3.             if (e.Column == 0)
  4.             {
  5.                 e.Cancel = true;
  6.             }
  7.         }
复制代码
回复 使用道具 举报
dkings
注册会员   /  发表于:2016-9-22 15:01:34
板凳
这个方式适合我的场景
回复 使用道具 举报
dkings
注册会员   /  发表于:2016-9-22 15:04:25
地板
并且我是silverlight
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-9-22 15:46:33
5#
silverlight 是一样的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部