用户控件类型未定义

时间:2013-11-18 21:32:39

标签: vb.net visual-studio-2010

我在向项目添加用户控件时遇到了问题。

  1. 我右键点击我的项目并选择添加 - >用户控制......
  2. 然后点击添加
  3. 我将标签拖到新用户控件上,然后保存。
  4. 我构建项目,返回到我的主窗体,然后将控件从工具箱中的组件标签拖到窗体上。
  5. 我看到控件,但是我收到错误:

    Type 'crm.UserControl1' is not defined.
    

    如果我使用空白项目执行此操作,则可行。我对vb.net或visual studio不太熟悉,无法理解出了什么问题。

    如果我双击错误,它会将我带到生成的表单设计器代码中的这一行:

    Me.UserControl11 = New crm.UserControl1()
    

    并说crm.UserControl1未定义。如果我将其更改为Global.crm.UserControl1,它可以正常工作,但显然当我操纵设计师时,这段代码会被覆盖。

    任何想法或指示让我开始朝着正确的方向前进?提前谢谢。

4 个答案:

答案 0 :(得分:2)

我的主窗体与根命名空间的名称相同。这就是造成这个问题的原因。

答案 1 :(得分:0)

据我所知,这是一种可访问性问题,因为当您尝试全局访问对象时,您可以解决问题。我认为当你拖放控件时,设计器类中控件的定义代码会自动生成私有辅助功能,但我不知道为什么。您可以尝试将其更改为公开。我希望这会奏效。

答案 2 :(得分:0)

有一个迟到的派对,但我有这个问题,我认为问题是由于控件是在一个比我正在使用的框架更新的框架中构建的。

基本上我的自定义控件是在4.7中构建的,但我的项目是在4.5.1中构建的

一旦我改变了当前版本,以便它们都是相同的,它就会愉快地编译。

答案 3 :(得分:0)

晚会晚了。我通过在aspx页面中用以下内容引用了它来修复它,因为它丢失了。

<%@ Register Src="~/Controls/mycontrolname.ascx" TagPrefix="ucControl" TagName="MyControl" %>