找回密码
 立即注册

QQ登录

只需一步,快速开始

dlerror
中级会员   /  发表于:2018-11-26 01:37  /   查看:3911  /  回复:9
Spread7.0.2010.2008升级到Spread11.0.4500.2012,Locked属性不起作用,发现是Protect属性默认值的问题,做了以下修改:
ActiveSheet.Protect = True
ActiveSheet.ColumnHeader.DefaultStyle.Locked = False
ActiveSheet.RowHeader.DefaultStyle.Locked = False
ActiveSheet.DefaultStyle.Locked = Flase
但是还有其他问题发生,当ActiveSheet.Protect = True时,改变RowCount的值会出现错误,提示行不能修改。

请问升级到Spread11后,怎样能快速简单的把Protect的默认属性和各个Locked的默认属性设置和Spread7一样,不出现错误。
麻烦版主帮忙找个解决方案,谢谢了。


9 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-11-26 14:21:40
沙发
在保护状态通过sheet.ROwCount = 100这种方式是可以改变行数的,您是怎么改变RowCount的?
回复 使用道具 举报
dlerror
中级会员   /  发表于:2018-11-26 14:59:07
板凳
本帖最后由 dlerror 于 2018-11-26 15:24 编辑
dexteryao 发表于 2018-11-26 14:21
在保护状态通过sheet.ROwCount = 100这种方式是可以改变行数的,您是怎么改变RowCount的?

同样使用ActiveSheet.RowCount = 0或者ActiveSheet.ColumnCount = 5这种方式改变行数和列数。
错误是:列数改变时错误发生。

以下是出现的错误的位置消息:
lg.a(String A_0, Type A_1)
rc.af(Int32 A_0)
FarPoint.Win.Spread.SheetView.set_ColumnCount(Int32 value)

还有一个问题,Protect=True,单元格的Locked=Ture,这时用Cells(row,col).Value给单元格赋值,但是单元格内容没有改变,这个情况怎样解决呢?

麻烦版主了,谢谢。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-11-26 16:30:25
地板
可否给我个Demo。您的行为和正常都不一致,protcet 只是对用户的输入会禁止,代码的操作是不影响的,即使单元格锁定,直接通过代码赋值也是可以的。
回复 使用道具 举报
dlerror
中级会员   /  发表于:2018-11-26 16:56:10
5#
dexteryao 发表于 2018-11-26 16:30
可否给我个Demo。您的行为和正常都不一致,protcet 只是对用户的输入会禁止,代码的操作是不影响的,即使单 ...

Window10+Visual Studio2017(Version : 15.6.7)+SPREAD for Windows Forms 11.0J(Version : 11.0.4500.2012)

这个Demo改变行数和列数时出错,单元格也无法赋值。
麻烦版主确认一下,谢谢。

CellLock.zip

441.4 KB, 下载次数: 135

CellLockDemo

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-11-26 17:22:54
6#
没有碰到问题,您检查下您引用的控件版本是否一致
image.png346354674.png
回复 使用道具 举报
dlerror
中级会员   /  发表于:2018-11-26 18:18:23
7#
本帖最后由 dlerror 于 2018-11-26 18:19 编辑
dexteryao 发表于 2018-11-26 17:22
没有碰到问题,您检查下您引用的控件版本是否一致

licenses.licx文件中的版本号,CellLock.vbproj文件中的版本号都已经确认,是一致的。

①相关工具的版本信息

Windows 10 Pro
Visual Studio Enterprise 2017(Version 15.6.7)
.NET Framework 4.7.1
SPREAD for Windows Forms 11.0J(Version : 11.0.4500.2012)

②Demo工程的建立过程。
建立新的工程,在工具箱中添加Spread控件
图片.png427746886.png

添加新的窗体,拖拽工具箱中新添加Spread控件到窗体上。
在属性--》Sheets中,修改以下属性
Protect = True
ColumnHeader.DefaultStyle.Locked = False
RowHeader.DefaultStyle.Locked = False

在窗体的Load事件中,添加修改行数和列数以及单元格赋值的代码。

③运行Demo,出现的错误如下:
图片.png91694335.png

以上是我的全部信息,麻烦版主再帮我确认一下吧,谢谢了。




回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-11-27 16:16:36
8#
我这边用的是11.0.4502.2012 这个版本,还是没有重现您的问题,建议您再升级下试试。
回复 使用道具 举报
dlerror
中级会员   /  发表于:2018-11-27 19:06:45
9#
dexteryao 发表于 2018-11-27 16:16
我这边用的是11.0.4502.2012 这个版本,还是没有重现您的问题,建议您再升级下试试。

升级到11.0.4502.2012,问题解决了,谢谢版主。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-11-28 09:35:14
10#
小版本的问题,解决就好。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部