代码之家  ›  专栏  ›  技术社区  ›  Ocelot20

web.config中的“引用”用户控件?

  •  4
  • Ocelot20  · 技术社区  · 14 年前

    我希望在网站*的代码隐藏中以编程方式创建用户控件的实例。我找到的以编程方式引用用户控件类的唯一方法是:

    1. 在web.config中注册该控件并将该控件放到页面上(有效,但我不希望该控件出现在页面上,因为我希望动态添加它)。
    2. 将<%@reference control=“name.aspx”>添加到顶部的aspx页。

    理想情况下,我希望有任何ASPX页引用控件,而不必将<%@reference>声明放在每页的顶部。我知道我可以在web.config中“注册”控件,所以我不必在每个页面上都这样做,所以我想知道是否存在类似的引用。我几乎可以肯定我遗漏了关于整个注册/引用概念的一些东西,所以也许只是一个关于如何最好地做到这一点的解释。

    *网站类型项目,而不是Web应用程序(如果这很重要)。

    1 回复  |  直到 14 年前
        1
  •  1
  •   millerjs    14 年前

    这里的评论主题中有一些关于这个问题的相关讨论: http://weblogs.asp.net/scottgu/archive/2006/11/26/tip-trick-how-to-register-user-controls-and-custom-controls-in-web-config.aspx

    根据我的经验(通过这个线程确认),在Web站点项目中,对用户控件的编程访问通常是很痛苦的。如果您正在进行动态控件实例化,我认为它加强了使用Web应用程序项目的情况,因此您不需要@reference。

    如果你绝望的话,反思可能是解决这一问题的一种方法;你可以从这里开始: http://geekswithblogs.net/aghausman/archive/2009/04/15/how-to-pass-parameters-to-the-dynamically-added-user-control.aspx