Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.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 “错误”;未能创建组件';控制名称'&引用;将windows窗体用户控件拖动到窗体时_Winforms - Fatal编程技术网

Winforms “错误”;未能创建组件';控制名称'&引用;将windows窗体用户控件拖动到窗体时

Winforms “错误”;未能创建组件';控制名称'&引用;将windows窗体用户控件拖动到窗体时,winforms,Winforms,我的项目中有一个windows窗体用户控件。它一直在一个没有任何问题的表单上工作,但突然间我不能再在任何其他表单上使用它了。如果我试图将它从工具箱拖到一个新窗体,我会收到此错误消息 未能创建控件“controlName”。错误消息如下:system.ArgumentException:在配置中找不到指定的命名连接,该连接不打算与EntityClient提供程序一起使用,或者无效 但是当我运行项目时,它编译时没有任何错误 另外,当我想打开已经包含此Usercontrol并且运行良好的表单的设计器时

我的项目中有一个windows窗体用户控件。它一直在一个没有任何问题的表单上工作,但突然间我不能再在任何其他表单上使用它了。如果我试图将它从工具箱拖到一个新窗体,我会收到此错误消息

未能创建控件“controlName”。错误消息如下:system.ArgumentException:在配置中找不到指定的命名连接,该连接不打算与EntityClient提供程序一起使用,或者无效

但是当我运行项目时,它编译时没有任何错误

另外,当我想打开已经包含此Usercontrol并且运行良好的表单的设计器时,设计器不会加载,我会看到下面的错误消息

“为防止加载设计器之前可能的数据丢失,必须解决以下错误:

指定的命名连接在配置中找不到、不打算与EntityClient提供程序一起使用,或者无效

变量“MyControlName1”未声明或从未分配。“

我不明白发生了什么,但项目仍然在构建和运行,但肯定
有严重的问题

看起来您的控件正试图在designtime上与数据库建立连接,但找不到该数据库(可能是因为设计器试图在Visual Studio bin目录中查找)


最好的方法不是在设计时将数据库连接到用户控件,而是在运行时将其动态链接。

将用户控件加载方法包装为:

private void myUserControl_Load(object sender, EventArgs e)
{
    if (!this.DesignMode)
    {
        //....stuff
    }            
}

在运行时动态链接到数据库可以解决此问题。谢谢你能举个例子吗?这个答案解决了我很多问题。谢谢