zoukankan      html  css  js  c++  java
  • 用户自定义控件的嵌套问题

    开发人员通过在页面的顶部添加 <%@ Register %> 指令来引入和使用自定义服务器控件和用户控件时

    <%@ Register TagName="Pager" TagPrefix="ucl"  Src="~/UserControl/Pager.ascx"%>

    假使现在用户控件ListShow 需引用同一目录下的Pager.ascx控件   通过在 web.config 文件中声明的用

    户自定义控件不能直接被同一目录的用户自定义控件引用

    如ListShow需引用同目录下的Pager控件的话

    需在ListShow控件头部先注册  <%@ Register TagName="Pager" TagPrefix="ucl"  Src="~/UserControl/Pager.ascx"%>

    在web.config文件配置了用户控件
    <pages>
    <controls>
    <add tagPrefix="WUC" tagName="PageList" src="~/hl/account/pagelist.ascx" />
    </controls>
    </pages>

    aspx调用用户控件的时候出错:
    <WUC:PageLIst ID="FenYe" runat="server" />

    报错信息:
    页“/hl/account/accountlist.aspx”无法使用用户控件“/hl/account/LogTop.ascx”,因为此控件已在 web.config 中注册并且与该页位于同一个目录中。

    这是是什么原因呢?

    原因如下:

    通过 pages.controls.add 注册的 UserControl,如果和该用户控件在同一级目录aspx文件引用此用户控件的,仍然要是使用 Regisert 指令在aspx页面中对此控件进行注册,否则 ASP.NET 就无法解析了,

    解决方案:

    1.在aspx页面通过Regiset指令再次注册改用户控件

    2.给用户控件新建目录 UserControls/ 避免用户控件和需要引用该用户控件的aspx在同一级目录。

    附上在web.config文件注册用户自定义控件的方法

    ASP.NET 2.0 使得控件声明极其干净而且管理起来极其容易。不用在你的页面上重复这些声明,只要在你的应用的web.config 文件的新的 pages->controls 部分声明一次即可:

    <?xml version="1.0"?> 

     <configuration> 

      <system.web>
        
        
    <pages>
          
    <controls>
            
    <add tagPrefix="scottgu" src="~/Controls/Header.ascx" tagName="header"/>
            <
    add tagPrefix="scottgu" src="~/Controls/Footer.ascx" tagName="footer"/>
            <
    add tagPrefix="ControlVendor" assembly="ControlVendorAssembly"/>
          </
    controls>
        
    </pages>

      </system.web>

    </configuration>

  • 相关阅读:
    C++------------------>深浅拷贝的问题
    超越 EfficientNet与MobileNetV3,NeurIPS 2020 微软NAS方向最新研究
    数学之美
    mobilenetV2--->特点
    安装R语言扩展包vegan
    每日积累新知识
    安装生物信息学软件-R
    安装生物信息学软件-MetaPhlAn2
    概率统计&假设检验-1
    Population-based metagenomics analysis reveals markers for gut microbiome composition and diversity
  • 原文地址:https://www.cnblogs.com/lushuicongsheng/p/1907176.html
Copyright © 2011-2022 走看看