无法从代码后面引用我的web usercontrol(ascx)

时间:2014-08-18 20:53:24

标签: c# asp.net webusercontrol

我正在尝试在Visual Studio 2012 / ASP.Net / C#中动态创建用户控件,但是当我尝试在任何其他aspx后面的代码中使用它时,我的项目无法识别我的用户控件的类型名称ascx页面。我已经尝试过重建它并删除名称空间,看起来它应该可以正常工作,但事实并非如此!

我的ascx文件的第一行是:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="AG_Controls_WebUserControl" %>

相应的代码隐藏看起来像这样:

public partial class AG_Controls_WebUserControl : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
}

我尝试在像这样的空白aspx页面的代码中声明它的实例:

AG_Controls_WebUserControl test = new AG_Controls_WebUserControl();

我得到:

  

错误3类型或命名空间名称'AG_Controls_WebUserControl'可以   找不到(你错过了使用指令或程序集   参考?)

这是漫长的一天,我很累但这不应该是火箭科学,但我看不出问题是什么。非常感谢!

1 个答案:

答案 0 :(得分:1)

您忘记在ASPX页面中包含对控件的引用。如果要在后面的代码中动态创建控件,则仍需要包含该引用。

<%@ Register src="WebUserControl.ascx" tagname="WebUserControl" tagprefix="uc1" %>