ASP.NET-在App_Code类中实例化Web用户控件

时间:2008-10-08 14:11:35

标签: asp.net

文件:

网站\控制\ map.ascx

网站\ App_Code文件\ map.cs

我想在map.cs

中创建一个强类型的map.ascx实例

通常,在aspx中,您可以添加<%Register ...标记,以便能够在代码隐藏中实例化。这可能在app_code类中吗? 我正在使用.NET 3.5 / Visual Studio 2008

谢谢!

2 个答案:

答案 0 :(得分:4)

通常情况下,我会做这样的事情(假设您的类型是“Map”,并且您的.ascx文件中有相应的“Inherits”声明):

Map map = (Map)LoadControl("~/Controls/map.ascx");

答案 1 :(得分:1)

在Website \ Controls中是否有map.ascx.cs文件?如果是这样,请将其移至App_Code。请注意,您可能必须将.ascx文件中的CodeFile属性更新为〜\ App_Code \ map.ascx.cs。 或者,由于控件是部分类,您只需在〜\ App_Code \ map.cs中创建代码:

public partial class controls_Map : UserControl
{
    protected void Page_Load( object sender, EventArgs e )
    {
         ...code here....
    }
}

从控制目录中的map.ascx.cs文件中删除所有方法。