2010-12-09 35 views
0

我有一个包含许多其他用户控件的用户控件。在代码中使用ASP.NET用户控件导致在'未定义的程序集中引用'异常

我需要对包含外部控件的页面的内部控件之一的某些属性进行编程访问。

所以,页面包含外部控制包含内部控制,并且页面需要访问内部控件的属性。

我当然可以在Outer Control中创建属性来返回Inner Control中的相应属性,但这会很乏味。

我想什么做的是增加一个属性,以外部控制其返回内部控制本身,因此该页面可以直接访问它的属性:

(在代码隐藏的外部控制):

public UserControls_InnerControl InnerControl { get { return this.ctlInnerControl; } } 

但是,当我建立网站时,我得到:

类型'UserControls_InnerControl'在未引用的程序集中定义。您必须添加对程序集“App_Web_fc5rstgb,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null”的引用。

到底是什么?我一直以编程方式使用用户控件的实例(例如,将它们动态添加到其他控件),而我从未见过这种情况。

有什么我可以做的吗?

编辑:有趣的是,它不是OuterControl中的属性,它暴露了造成异常的InnerControl。这是页面中的代码,它会消耗这个属性的错误。

回答

1

尝试添加正访问他的内部控制页面上的以下内容:

<%@注册SRC = “UserControls_InnerControl.ascx” 变量名= “UC” 的TagPrefix = “UC1” %>
<% @ Reference Control =“〜/ InnerControl.ascx”%>

根据您的应用程序修复路径。

Regards

+1

我的话。这真是太令人难以置信了。不要评价我!我有一个三个月大的儿子!他感冒了! – David 2010-12-09 10:28:35

相关问题