这个VS示例项目在设计器中显示空白表单,为什么?

时间:2016-12-15 12:46:02

标签: vb.net forms visual-studio windows-forms-designer

天才Reed Kimble的新Simple Multi-User TCP/IP Client & Server using TAP示例,在VS 2015社区中打开时,显示客户端和服务器的空白表单:

Blank designer form...

我的意思是,表单设计器显示两者的空表单,但是控件创建代码确实存在于.vb文件中,从而导致工作程序集无法重新设计表单。 (无论如何,以任何图形方式。)

enter image description here

用Google搜索这个“问题”超过几个小时。显然这是相当普遍的。我发现它通常是由于.vbproj文件损坏:

<Compile Include="Form1.vb">
  <SubType>Form</SubType> 
</Compile>
<Compile Include="Form1.Designer.vb">
  <DependentUpon>Form1.vb</DependentUpon>  '<-- this is often missing!
</Compile>

我检查了所有.vbproj文件,这些看起来都是正确的。项目加载或构建时没有错误。有没有人知道 else 会导致这种行为?

1 个答案:

答案 0 :(得分:1)

如果.desginer文件中没有创建任何组件,则Visual Studio只能显示空白表单。

看起来所有控件都是在运行时创建并放置在表单上的 - 通过ssh事件处理程序中的代码。这就是为什么当代码实际运行时你会看到表单的所有荣耀。

这两种解决方案都是同样有效的方法,一种适合您的方法将取决于您希望能够做什么。如果,正如您所说,您希望能够快速,轻松地更改表单的设计,则必须从FormLoad事件处理程序中删除代码,并将等效代码放在.designer文件中。您可以通过简单地复制代码来完成此操作,但通过从工具箱中将组件拖到窗体上,从头开始重新安装可能会更安全。

相关问题