使用我的几种表单,偶尔会遇到以下问题:我使用设计器(Visual Studio 2008,Windows Forms,.NET 2.0,VB.NET)编辑表单添加组件,后来才发现一些小调整被制作了(例如表单的大小突然改变了几个像素),并且控件被删除。这会悄无声息地发生——事件处理方法也会自动Handles
删除它们的后缀,因此它们永远不会被调用,也不会出现编译器错误。我只是在很久以后才注意到或根本没有注意到,因为我正在处理表格中的不同区域。
例如,我有一个表单,其中左侧SplitContainer
包含 Infragistics,右侧包含一个。我添加了一个新选项卡和其中的控件,它们运行良好。后来我发现列表视图的滚动条突然不可见,因为它的大小被关闭了,并且至少有一个控件从我没有处理的不同选项卡中删除。UltraListView
UltraTabControl
这是 WinForms Designer 还是 Infragistics 的已知问题?当然,我使用版本控制,因此我可以比较更改并将已删除的代码重新合并,但这是一个乏味的过程,不应该是必要的。有没有办法避免这种情况?发生这种情况有充分的理由吗?
Load
一条线索是,被删除的控件可能具有预期在运行时而不是设计时运行的代码(例如事件处理程序),并且可能会引发异常。这会导致 Visual Studio 删除控件吗?