xna – 与Microsoft“WinForms Series 1:Graphics Device”的错误

我有 this sample的问题.我刚刚下载并运行它(Visual Studio 2010).我没有触及任何东西.

对不起语言,它是意大利语.
它从上到下说:

>为了避免在加载设计器窗口之前丢失信息,有必要解决这些错误:
>无法将设计器Windows可视化为文件,因为无法设计类.设计器实用程序已经检查了这些类:SpinningTriangleControl —无法加载其基类“WinFormsGraphicsDevice.GraphicsDeviceControl”.验证是否存在对程序集的引用以及是否已生成所有项目.
>下面说的一样

注意:

>如果我编译并运行,它可以工作.
>在ide的工具栏中,有时(我没有理解的时候),有两个控件用SpinningTriangleControl和SpriteFont创建;有时他们会消失.发生这种情况时,控件也会从项目的MainWindow表单中删除!
>我不知道它是否重要,但我注意到控件经常消失并从xxx.designer.cs中删除自己,同时我添加了一些新的控件,比如toolstripmenu等,或者我添加了一些新的Event Handler for一些控制.

我真的不明白发生了什么.

由JT编辑:repro在这里:sdrv.ms/1kIhI5o

Repro步骤:

开放解决方案
选择flowLayoutPanel1控件
运行该应用程序
停止申请
现在尝试选择gameWrapper!

结果:
无法再选择gameWrapper控件,它甚至不会显示在表单控件的Property Windows下拉列表中!

我已经看到这种情况发生在几个场景中.

1)项目获得自己的参考.

如果您在项目A中有一个usercontrol,并使用该设计将usercontrol添加到项目A中的表单,Visual Studio将添加一个自引用,这将搞砸设计器.

2)为可视元素创建一个抽象基类.

由于无法实例化抽象类,因此设计器将无法在设计器中创建要呈现的实例.

3)DesignMode错误

如果您使用DesignMode属性来确定UserControls是否应该在Load()之类的事件中加载数据,则需要知道如果嵌套多个深度的控件,DesignMode将会中断.你可以通过键入LicenseManager.UsageMode创建自己的designmode变量来解决这个问题.

相关文章

文章浏览阅读2.2k次,点赞6次,收藏20次。在我们平时办公工作...
文章浏览阅读1k次。解决 Windows make command not found 和...
文章浏览阅读3.2k次,点赞2次,收藏6次。2、鼠标依次点击“计...
文章浏览阅读1.3w次。蓝光版属于高清版的一种。BD英文全名是...
文章浏览阅读974次,点赞7次,收藏8次。提供了更强大的功能,...
文章浏览阅读1.4w次,点赞5次,收藏22次。如果使用iterator的...