System.InvalidOperationException: 集合已修改;可能无法执行枚举操作

zy1020868764 2014-08-18 08:54:21
错误报告
————————
System.InvalidOperationException: 集合已修改;可能无法执行枚举操作。
在 System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
在 System.Collections.Generic.List`1.Enumerator.MoveNextRare()
在 System.Collections.Generic.List`1.Enumerator.MoveNext()
在 Microsoft.VisualBasic.PowerPacks.ShapeCollection.Dispose(Boolean disposing)
在 Microsoft.VisualBasic.PowerPacks.ShapeContainer.Dispose(Boolean disposing)
在 System.ComponentModel.Component.Dispose()
在 System.Windows.Forms.Control.Dispose(Boolean disposing)
在 System.Windows.Forms.Form.Dispose(Boolean disposing)
在 *.Form4.Dispose(Boolean disposing) 位置 E:\*\*\*\*\*\Form4.Designer.vb:行号 13
在 System.ComponentModel.Component.Dispose()
在 System.Windows.Forms.Form.WmClose(Message& m)
在 System.Windows.Forms.Form.WndProc(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

关于13的代码
 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim a As Integer
Dim b As Integer
Dim c As Integer
c = Val(TextBox3.Text) '斜边长度
a = Val(TextBox1.Text) '对边长度
If c = 0 Then
TextBox2.Text = "数值不能为0或字母"
TextBox4.Text = "数值不能为0或字母" '第13行
TextBox5.Text = "数值不能为0或字母"
TextBox1.Text = "" : TextBox3.Text = ""
TextBox3.Focus()
Exit Sub
End If



已安装vs2012电脑未发现该问题,该问题出现于非安装vs的系统中(包括XP和Win7)
请问如何解决该问题
...全文
986 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2014-08-19
  • 打赏
  • 举报
回复
你的代码有问题!
看调用堆栈,System.Windows.Forms.Form.WmClose(Message& m)窗体关闭,控件开始释放,你怎么还在给控件赋值!
zy1020868764 2014-08-19
  • 打赏
  • 举报
回复
各位辛苦了,经过调试发现是定义时错了 原来是
Dim a As Integer
        Dim b As Integer
        Dim c As Integer
现在
Dim a As String
        Dim b As String
        Dim c As String
zy1020868764 2014-08-19
  • 打赏
  • 举报
回复
引用 9 楼 Tiger_Zhao 的回复:
你的代码有问题! 看调用堆栈,System.Windows.Forms.Form.WmClose(Message& m)窗体关闭,控件开始释放,你怎么还在给控件赋值!
这个错误是出现在窗口关闭后弹出来的
zy1020868764 2014-08-18
  • 打赏
  • 举报
回复
是窗体文件中的代码
zy1020868764 2014-08-18
  • 打赏
  • 举报
回复
代码复制了一部分
  • 打赏
  • 举报
回复
不会VB,但Private Sub 和End Sub是要对应吧?你这样也可以?
bdmh 2014-08-18
  • 打赏
  • 举报
回复
是窗体设计文件吧,不是代码文件
zy1020868764 2014-08-18
  • 打赏
  • 举报
回复
引用 2 楼 bdmh 的回复:
是设计文件的十三行,看看那是什么
TextBox4.Text = "数值不能为0或字母"      '第13行
zy1020868764 2014-08-18
  • 打赏
  • 举报
回复
引用 1 楼 wangnaisheng 的回复:
.NET Framework 是否已经安装? 如果没有那就安装一下。 安装vs的电脑,都安装了.NET Framework 。
两台未安装vs的电脑均安装了.net4和VisualBasicPowerPacksSetup 编程的电脑win7,vs2012,.net4.5未发现该错误
bdmh 2014-08-18
  • 打赏
  • 举报
回复
是设计文件的十三行,看看那是什么
wangnaisheng 2014-08-18
  • 打赏
  • 举报
回复
.NET Framework 是否已经安装? 如果没有那就安装一下。 安装vs的电脑,都安装了.NET Framework 。
第1章 概述 1 1.1 精心设计的框架所具备的品质 2 1.1.1 精心设计的框架是简单的 2 1.1.2 精心设计的框架设计代价高 3 1.1.3 精心设计的框架充满利弊权衡 3 1.1.4 精心设计的框架应该借鉴过去 4 1.1.5 精心设计的框架要考虑未来发展 4 1.1.6 精心设计的框架应具有良好的集成性 4 1.1.7 精心设计的框架是一致的 4 第2章 框架设计基础 6 2.1 渐进框架 7 2.2 框架设计的基本原则 10 2.2.1 场景驱动设计的原则 11 2.2.2 低门槛原则 17 2.2.3 自说明对象模型原则 20 2.2.4 分层架构原则 25 2.3 小结 27 第3章 命名规范 28 3.1 大小写约定 29 3.1.1 标识符的大小写规则 29 3.1.2 首字母缩写词的大小写 31 3.1.3 复合词和常用术语的大小写 33 3.1.4 是否区分大小写 35 3.2 通用命名约定 35 3.2.1 单词的选择 36 3.2.2 使用单词缩写和首字母缩写词 37 3.2.3 避免使用语言特有的名字 38 3.2.4 为已有API的新版本命名 39 3.3 程序集和DLL的命名 42 3.4 名字空间的命名 43 3.5 类、结构和接口的命名 47 3.5.1 泛型类型参数的命名 49 3.5.2 常用类型的命名 50 3.5.3 枚举类型的命名 51 3.6 类型成员的命名 53 3.6.1 方法的命名 53 3.6.2 属性的命名 54 3.6.3 事件的命名 55 3.6.4 字段的命名 57 3.7 参数的命名 57 3.8 资源的命名 58 3.9 小结 59 第4章 类型设计规范 60 4.1 类型和名字空间 62 4.2 类和结构之间的选择 67 4.3 类和接口之间的选择 69 4.4 抽象类的设计 76 4.5 静态类的设计 78 4.6 接口的设计 79 4.7 结构的设计 81 4.8 枚举的设计 83 4.8.1 标记枚举的设计 89 4.8.2 给枚举添加值 93 4.9 嵌套类型 94 4.10 小结 96 第5章 成员设计 97 5.1 成员设计的一般规范 97 5.1.1 成员重载 97 5.1.2 显式地实现接口成员 102 5.1.3 属性和方法之间的选择 106 5.2 属性的设计 112 5.2.1 索引属性的设计 113 5.2.2 属性改变的通知事件 115 5.3 构造函数的设计 117 5.4 事件的设计 123 5.5 字段的设计 130 5.6 操作符重载 132 5.6.1 重载operator== 136 5.6.2 类型转换操作符 136 5.7 参数的设计 138 5.7.1 枚举和布尔参数之间的选择 140 5.7.2 参数的验证 142 5.7.3 参数的传递 145 5.7.4 参数数量可变的成员 147 5.7.5 指针参数 150 5.8 小结 152 第6章 为扩展性而设计 153 6.1 扩展机制 153 6.1.1 非密封类 153 6.1.2 保护成员 155 6.1.3 事件与回调函数 156 6.1.4 虚成员 158 6.1.5 抽象(抽象类型与抽象接口) 160 6.2 基类 162 6.3 密封 163 6.4 小结 166 第7章 异常 167 7.1 抛出异常 171 7.2 为抛出的异常选择合适的类型 175 7.2.1 错误消息的设计 176 7.2.2 异常处理 177 7.2.3 对异常进行封装 182 7.3 标准异常类型的使用 184 7.3.1 Exception与SystemException 184 7.3.2 ApplicationException 184 7.3.3 InvalidOperationException 184 7.3.4 ArgumentException、ArgumentNullException及ArgumentOutOfRangeException 185 7.3.5 NullReferenceException、IndexOutOfRangeException及AccessViolationException 186 7.3.6 StackOverflowException 186 7.3.7 OutOfMemoryException 187 7.3.8 ComException、SEHException及其他CLR异常 188 7.3.9 ExecutionEngineException 188 7.4 自定义异常的设计 188 7.5 异常与性能 190 7.5.1 Tester-Doer模式 190 7.5.2 Try-Parse模式 191 7.6 小结 192 第8章 使用规范 193 8.1 数组 193 8.2 attribute 195 8.3 集合 198 8.3.1 集合参数 199 8.3.2 集合属性与返回值 200 8.3.3 数组与集合之间的选择 204 8.3.4 自定义集合的实现 205 8.4 ICloneable 207 8.5 IComparableT与IEquatableT 208 8.6 IDisposable 210 8.7 对象 210 8.7.1 Object.Equals 210 8.7.2 Object.GetHashCode 212 8.7.3 Object.ToString 213 8.8 Uri 214 8.9 System.Xml的使用 216 8.10 相等性操作符 218 8.10.1 值类型的相等性操作符 218 8.10.2 引用类型的相等性操作符 219 第9章 常用的设计模式 220 9.1 聚合组件 220 9.1.1 面向组件的设计 222 9.1.2 因子类型 224 9.1.3 聚合组件规范 224 9.2 Async模式 227 9.3 Dispose模式 232 9.3.1 基本Dispose模式 234 9.3.2 可终结类型 240 9.4 Factory模式 243 9.5 Optional Feature模式 247 9.6 Template Method模式 251 9.7 超时 252 9.8 结束语 254 附录A C#编程风格约定 255 A.1 通用风格约定 255 A.1.1 花括号的使用 255 A.1.2 空格的使用 257 A.1.3 缩进的使用 259 A.2 命名约定 259 A.3 注释 260 A.4 文件的组织 261 附录B 通过FxCop来实施设计规范 263 B.1 FxCop是什么? 263 B.2 FxCop的发展过程 264 B.3 FxCop的工作原理 265 B.4 FxCop规范的覆盖范围 265 B.4.1 与命名规范有关的FxCop规则 265 B.4.2 与类型设计规范有关的FxCop规则 274 B.4.3 与成员的设计有关的FxCop规则 277 B.4.4 与为扩展性而设计有关的FxCop规则 284 B.4.5 与异常有关的FxCop规则 285 B.4.6 与使用规范有关的FxCop规则 287 B.4.7 与设计模式有关的FxCop规则 291 附录C API规范样例 292 术语表 299 推荐读物 303 索引 305
  本书为框架设计师和广大开发人员设计高质量的软件提供了权威的指南。书中介绍了在设计框架时的最佳实践,提供了自顶向下的规范,其中所描述的规范普遍适用于规模不同、可重用程度不同的框架和软件。这些规范历经.NET框架三个版本的长期开发,凝聚了数千名开发人员的经验和智慧。微软的各开发组正在使用这些规范开发下一代影响世界的软件产品。 第1章 概述 1 1.1 精心设计的框架所具备的品质 2 1.1.1 精心设计的框架是简单的 2 1.1.2 精心设计的框架设计代价高 3 1.1.3 精心设计的框架充满利弊权衡 3 1.1.4 精心设计的框架应该借鉴过去 4 1.1.5 精心设计的框架要考虑未来发展 4 1.1.6 精心设计的框架应具有良好的集成性 4 1.1.7 精心设计的框架是一致的 4 第2章 框架设计基础 6 2.1 渐进框架 7 2.2 框架设计的基本原则 10 2.2.1 场景驱动设计的原则 11 2.2.2 低门槛原则 17 2.2.3 自说明对象模型原则 20 2.2.4 分层架构原则 25 2.3 小结 27 第3章 命名规范 28 3.1 大小写约定 29 3.1.1 标识符的大小写规则 29 3.1.2 首字母缩写词的大小写 31 3.1.3 复合词和常用术语的大小写 33 3.1.4 是否区分大小写 35 3.2 通用命名约定 35 3.2.1 单词的选择 36 3.2.2 使用单词缩写和首字母缩写词 37 3.2.3 避免使用语言特有的名字 38 3.2.4 为已有API的新版本命名 39 3.3 程序集和DLL的命名 42 3.4 名字空间的命名 43 3.5 类、结构和接口的命名 47 3.5.1 泛型类型参数的命名 49 3.5.2 常用类型的命名 50 3.5.3 枚举类型的命名 51 3.6 类型成员的命名 53 3.6.1 方法的命名 53 3.6.2 属性的命名 54 3.6.3 事件的命名 55 3.6.4 字段的命名 57 3.7 参数的命名 57 3.8 资源的命名 58 3.9 小结 59 第4章 类型设计规范 60 4.1 类型和名字空间 62 4.2 类和结构之间的选择 67 4.3 类和接口之间的选择 69 4.4 抽象类的设计 76 4.5 静态类的设计 78 4.6 接口的设计 79 4.7 结构的设计 81 4.8 枚举的设计 83 4.8.1 标记枚举的设计 89 4.8.2 给枚举添加值 93 4.9 嵌套类型 94 4.10 小结 96 第5章 成员设计 97 5.1 成员设计的一般规范 97 5.1.1 成员重载 97 5.1.2 显式地实现接口成员 102 5.1.3 属性和方法之间的选择 106 5.2 属性的设计 112 5.2.1 索引属性的设计 113 5.2.2 属性改变的通知事件 115 5.3 构造函数的设计 117 5.4 事件的设计 123 5.5 字段的设计 130 5.6 操作符重载 132 5.6.1 重载operator== 136 5.6.2 类型转换操作符 136 5.7 参数的设计 138 5.7.1 枚举和布尔参数之间的选择 140 5.7.2 参数的验证 142 5.7.3 参数的传递 145 5.7.4 参数数量可变的成员 147 5.7.5 指针参数 150 5.8 小结 152 第6章 为扩展性而设计 153 6.1 扩展机制 153 6.1.1 非密封类 153 6.1.2 保护成员 155 6.1.3 事件与回调函数 156 6.1.4 虚成员 158 6.1.5 抽象(抽象类型与抽象接口) 160 6.2 基类 162 6.3 密封 163 6.4 小结 166 第7章 异常 167 7.1 抛出异常 171 7.2 为抛出的异常选择合适的类型 175 7.2.1 错误消息的设计 176 7.2.2 异常处理 177 7.2.3 对异常进行封装 182 7.3 标准异常类型的使用 184 7.3.1 Exception与SystemException 184 7.3.2 ApplicationException 184 7.3.3 InvalidOperationException 184 7.3.4 ArgumentException、ArgumentNullException及ArgumentOutOfRangeException 185 7.3.5 NullReferenceException、IndexOutOfRangeException及AccessViolationException 186 7.3.6 StackOverflowException 186 7.3.7 OutOfMemoryException 187 7.3.8 ComException、SEHException及其他CLR异常 188 7.3.9 ExecutionEngineException 188 7.4 自定义异常的设计 188 7.5 异常与性能 190 7.5.1 Tester-Doer模式 190 7.5.2 Try-Parse模式 191 7.6 小结 192 第8章 使用规范 193 8.1 数组 193 8.2 attribute 195 8.3 集合 198 8.3.1 集合参数 199 8.3.2 集合属性与返回值 200 8.3.3 数组与集合之间的选择 204 8.3.4 自定义集合的实现 205 8.4 ICloneable 207 8.5 IComparableT与IEquatableT 208 8.6 IDisposable 210 8.7 对象 210 8.7.1 Object.Equals 210 8.7.2 Object.GetHashCode 212 8.7.3 Object.ToString 213 8.8 Uri 214 8.9 System.Xml的使用 216 8.10 相等性操作符 218 8.10.1 值类型的相等性操作符 218 8.10.2 引用类型的相等性操作符 219 第9章 常用的设计模式 220 9.1 聚合组件 220 9.1.1 面向组件的设计 222 9.1.2 因子类型 224 9.1.3 聚合组件规范 224 9.2 Async模式 227 9.3 Dispose模式 232 9.3.1 基本Dispose模式 234 9.3.2 可终结类型 240 9.4 Factory模式 243 9.5 Optional Feature模式 247 9.6 Template Method模式 251 9.7 超时 252 9.8 结束语 254 附录A C#编程风格约定 255 A.1 通用风格约定 255 A.1.1 花括号的使用 255 A.1.2 空格的使用 257 A.1.3 缩进的使用 259 A.2 命名约定 259 A.3 注释 260 A.4 文件的组织 261 附录B 通过FxCop来实施设计规范 263 B.1 FxCop是什么? 263 B.2 FxCop的发展过程 264 B.3 FxCop的工作原理 265 B.4 FxCop规范的覆盖范围 265 B.4.1 与命名规范有关的FxCop规则 265 B.4.2 与类型设计规范有关的FxCop规则 274 B.4.3 与成员的设计有关的FxCop规则 277 B.4.4 与为扩展性而设计有关的FxCop规则 284 B.4.5 与异常有关的FxCop规则 285 B.4.6 与使用规范有关的FxCop规则 287 B.4.7 与设计模式有关的FxCop规则 291 附录C API规范样例 292 术语表 299 推荐读物 303 索引 305

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧