用的是ACCESS数据库
在表中,编辑后,不管是有无点,系统命令“保存”,点“撤销”,就会提示如下错误:
.NET Framework 版本:2.0.50727.8793
Foxtable 版本:2018.9.9.1
错误所在事件:菜单,Undo,Click
详细错误信息:
索引超出范围。必须为非负值并小于集合大小。
参数名: index
去论坛查了此类问题,没有我要的信息,最后自己调试了下。发现了问题所在
在表事件中,AfterEdit(结束编辑单元格后执行,通常用于执行一些特定的操作和计算),有写了如下事件:
If E.Col.Name="通码" Or E.Col.Name="部件数量" Then
''e.Table.save
Syscmd.Project.Save()
End If
所以,每次编辑“通码”或"部件数量"列后,按撤销,都会有错误提示!编辑其他列,都没有问题。
正常操作是,编辑行后,不保存就能使用系统命令“撤销”,保存后,就不能用使用。
我就纳闷?以上事件,用了系统命令,Syscmd.Project.Save(),后,按理说,撤销功能应该不能用了啊,为什么“撤销”图标不是灰色的,为什么还能用,一用就错误提示!