多个用户控件具有一个名称空间

时间:2014-09-08 11:24:00

标签: c# asp.net user-controls namespaces

我的asp.net网站上有多个用户控件,我为每个用户控件定义了一个名称空间,如下所示: 添加文档用户控件:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AddDocument.ascx.cs" Inherits="DMS.UI.Users.Controls.AddDocument" %>

C#代码背后:

namespace DMS.UI.Users.Controls
{
    public partial class AddDocument : UserControl
    {
    }
}

AddSubversion Usercontrol:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="AddSubversion.ascx.cs" Inherits="DMS.UI.Users.Controls.AddSubversion" %>

c#代码背后:

namespace DMS.UI.Users.Controls
{
    public partial class AddSubversion : UserControl
    {
    }
}

现在我需要在一个用户控件中使用其他用户控件,如下所示:

AddSubversion ucAddSubversion = (AddSubversion)this.Parent.Parent.FindControl("ucAddSubversion");

但程序无法识别所有用户控件都在一个命名空间中。为什么以及如何解决这个问题?

非常感谢

1 个答案:

答案 0 :(得分:0)

定义用户控件的命名空间与类的命名空间不同。如果我们想在另一个用户控件中使用一个usercontrol,唯一的方法是在另一个用户控件中注册该用户控件。即如果两个用户控件在一个命名空间中,没有Register visual studio(2010),我们也无法访问该用户控件及其公共属性...

<%@ Register Src="AddSubversion.ascx" TagName="AddSubversion" TagPrefix="uc5" %>