Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Winforms 自定义控件和VisualStudio2008SP1_Winforms_Visual Studio 2008_Ide_Custom Controls - Fatal编程技术网

Winforms 自定义控件和VisualStudio2008SP1

Winforms 自定义控件和VisualStudio2008SP1,winforms,visual-studio-2008,ide,custom-controls,Winforms,Visual Studio 2008,Ide,Custom Controls,我创建了一个自定义控件(从控件继承的类)。当我把它放在表单上时,我可以在VisualStudioIDE上使用它。它向我显示了一个错误,我没有看到表单 错误消息如下:La变量“ctrlImagen”没有声明,也没有声明 这是一个用于紧凑框架应用程序的winform 我怎样才能解决这个问题?(该类从UserControl继承而来,它工作得非常好)听起来您的控件的代码中有一个bug。这听起来像是阻止控件渲染的运行时错误 重新阅读代码并查找潜在的空指针异常、未赋值变量、堆栈溢出等。错误就在它们的某处。听

我创建了一个自定义控件(从控件继承的类)。当我把它放在表单上时,我可以在VisualStudioIDE上使用它。它向我显示了一个错误,我没有看到表单

错误消息如下:La变量“ctrlImagen”没有声明,也没有声明

这是一个用于紧凑框架应用程序的winform


我怎样才能解决这个问题?(该类从UserControl继承而来,它工作得非常好)

听起来您的控件的代码中有一个bug。这听起来像是阻止控件渲染的运行时错误


重新阅读代码并查找潜在的空指针异常、未赋值变量、堆栈溢出等。错误就在它们的某处。

听起来很疯狂,但Visual Studio正在设计器中有选择地为控件执行代码。首先要检查的是您的构造函数。确保您有一个空的默认构造函数,它是公共的,即使您从未计划使用它。在此之后,请确保与布局事件(如调整大小)关联的任何代码都可以正常运行,这些可能是罪魁祸首,因为当自定义控件在设计器中不起作用时,我总是会在这里发现问题。

您的用户控件是否有可能没有公共默认构造函数?如果构造函数不是公共的,我可以得到一个类似的错误“变量‘userControlX’未声明或从未分配”


但是需要更多信息。

我把这个放在构造函数上是为了解决这个问题: this.ClientSize=新大小(21,21)

我的课程是这样的:


公共类ControlMapa:控件
{
公共控制MAPA()
{
this.ClientSize=新大小(21,21);
...


谢谢!

在执行表单初始化逻辑之前执行的初始化逻辑中似乎发生了设计时异常。默认构造函数(或它调用的一个或多个方法)触发的NullPointerException就是一个很好的例子您的表单中包含的用户控件。

您可以在问题中输入错误消息吗?这是WPF还是WinForms?变量controlMap从未分配。西班牙语:La variable'controlMap'no estádeclarada o no se asignónunca.ASP.Net?WinForms?WPF?什么错误? public class ControlMapa : Control { public ControlMapa() { this.ClientSize = new Size(21, 21); ...