技术开发 频道

将asp.net usercontrol(用户控件页)转变为普通控件

    【IT168 技术文档】步骤:
    1. 建立一个 WEB 站点工程,创建一个 ascx 控件页,再创建一个 aspx 页面,将 ascx 放到 aspx 页面上,保证程序能正常运行;
    2. 删除 aspx 文件, 点 build->publish web site 菜单, 在点出的窗口中: 取消选择:Allow this precompiled to be updatable,这样 ascx 页面的内容将会被编译到 DLL 中.
    3. 选中 Use fixed naming and single page assemblies, 这样只会生成一个 DLL 文件.
编译之后即可生成一个 DLL.

    然后新建一个 WEB 工程, 添加对这个 DLL 的引用, 在 aspx 页面顶端添加: <%@Register TagPrefix="mycontrol" Namespace="WebUserControl" Assembly="App_Web_helloworld.ascx.cdcab7d2"%>
    具体的参数与创建 ASCX 工程和生成的 DLL 有关.

    然后在页面中添加一行: <mycontrol:helloworld id="MyUC" runat="server"/>
    此时在此 aspx 页面上即可使用先前建立的 ASCX 页面.
    为了能在所有 aspx 中使用此 ASCX 控件,而不需要在每个页面的顶端进行声明,可以在 web.config 中如下声明

<system.web>
  <pages theme="Default">
   <controls>
    <add tagPrefix="myconrol" namespace="WebUserControl"
assembly="App_Web_helloworld.ascx.cdcab7d2"/>
   </controls>
  </pages>
0
相关文章