我可能很难解释这一点,因为我完全不知道发生了什么,所以我只是在寻找一些指导。我可能有点罗嗦,因为我不确切知道相关信息是什么。
我正在为使用.Net(C#)
的项目开发GUI界面的一部分模仿了我们在另一个产品中所做的事情。出于一致性原因,我的老板要我让它看起来一样。所以我得到了其他软件,基本上将组件复制并粘贴到我的新GUI中。
这要求我引入一个组件库(现已停止使用的图形服务器GSNet,所以我无法向他们寻求帮助)所以我可以实现一些简单的图形和温度/压力“小部件”。
组件显示正常,当我编译时,一切似乎都正常。但是,在我的编程过程中的某个时刻它就会中断。有时,当我查看设计器页面(缺少方法异常)时,这些组件所在的选项卡会开始抛出异常,因此它不会显示。有时JUST来自GSNet库的组件不会出现。有时,如果我尝试运行它,我会在设计器代码文件中的一行代码上得到一个未实例化的异常。有时我根本无法看到设计师。
无论我做什么,我都无法逆转它。即使我撤消了我刚刚做的事情,它也无法修复它。如果发生这种情况,我必须恢复备份并重新开始。
所以我开始几乎每一步都备份。我编译它,它的工作原理。我注释掉一行代码,保存它,然后取消注释相同的代码行(所以我使用相同的代码),组件全部消失。我实际注释掉的代码行并不重要,只要它在同一个项目中就可以使用这些组件。
我几乎不得不使用这些组件。 。 。那么有人有任何建议或我可以调试这个吗?
答案 0 :(得分:0)
唯一想到的是只读bin目录。我发现如果bin目录中的互操作库是只读的,那么.NET会遇到麻烦。只读互操作通常会阻止使用这些互操作的控件在表单设计器中显示,从而搞乱编译(如果你做了完整的构建)。重建可能会让您运行应用程序,然后在使用只读互操作程序到达零件时失败。
这可能是您的问题,也可能不是,但这一切都浮现在脑海中。
答案 1 :(得分:0)
我知道游戏已经很晚了,但我遇到了同样的问题。
我从SVN下载了我们的一个应用程序,当我第一次尝试打开主窗体进行编辑时,我被提示未在软件中定义自定义组件,即使我可以清楚地看到它一类。我有一个选择忽略它,我做了,自定义控件迅速从表单中消失(仍然出现在项目中)。
所以在我的同事的建议下,我从硬盘中删除了实例,并从SVN重新检查了它。在我做任何其他事情之前,我为发布和发布项目构建了项目。调试,这解决了问题。
也许这会帮助其他人在遇到这个问题时找到这个问题。