2

在我正在处理的项目中,我已将所有 winforms 的资源文件(仅包含字符串)移至资源 dll,该资源 dll 还有一个静态类,可在项目启动时将所有资源文件字符串加载到内存中,并且每个form 从中获取字符串。

我有一个带有几个用户控件的 winform,它们也可以访问该 dll 的字符串。当我尝试在设计视图中打开该表单时,每个用户控件都会出现以下错误:

“变量‘control_name’要么未声明,要么从未赋值”

我仍然可以毫无问题地运行该项目。

我尝试从用户控件的构造函数和 Load 事件中调用 dll,但是这两种情况都不起作用。

4

2 回答 2

2

正如我在之前的评论中提到的,我设法解决了这个问题。我没有从用户控件中访问资源 dll,而是将每个控件的函数更改为 public 并从 winform 调用这些函数

于 2012-04-16T19:55:05.613 回答
0

首先尝试简单的解决方案:
执行 Build->Rebuild Solution。关闭 Visual Studio,重新打开。如果用户控件在设计时构造期间引发异常,则可能会发生这种情况。它仅在 Visual Studio 重新启动后才清除。(带有 SP1 的 Visual Studio 2008)

如果这失败了,那么您可能引用了一个从未声明或分配的变量,例如 Button1。如果未分配,您将收到警告,而不是错误。

要更正此错误:声明或分配错误消息中指定的变量。

http://msdn.microsoft.com/en-us/library/4008y84t.aspx

于 2012-04-16T08:26:45.237 回答