您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp.net编程 >> 正文

把某个asp.net 控件替换成自定义控件的方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 这篇文章主要介绍了把某个asp.net 控件替换成自定义控件的方法,需要的朋友可以参考下

功能:可以把某个asp.net 控件 替换成 自定义的控件    pages 的 tagMapping 元素(ASP.NET 设置架构)    定义一个标记类型的集合,这些标记类型在编译时重新映射为其他标记类型。    此元素是 .NET Framework 2.0 版中的新元素。  代码如下: <pages>  <tagMapping>  <add  tagType=  "System.Web.UI.WebControls.WebParts.WebPartManager"  mappedTagType=  "Microsoft.Sharepoint.WebPartPartManager,  MSPS.Web.dll, Version='2.0.0.0'"  />  </tagMapping>  </pages>    前端代码:   代码如下: <form id="form1" runat="server">  <div>  <asp:Label ID="lb1" runat="server" Text="lb"></asp:Label>  </div>  </form>    其生成的HTML如下:  代码如下: <form name="form1" method="post" action="Default.aspx" id="form1">  <div>  <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE1ODYxMzExNjlkZIRGtA8oGwNrNQd7V9ZkX3zxcLan" />  </div>    <div>  <span id="lb1">lb</span>  </div>  </form>    在配置文件的pages节点中加入   代码如下: <tagMapping>  <add tagType="System.Web.UI.WebControls.Label" mappedTagType="CJQ.Web.MyLabel" />  </tagMapping>    其中自定义控件的代码是  代码如下: namespace CJQ.Web  {  public class MyLabel : System.Web.UI.WebControls.Label  {  protected override void RenderContents(System.Web.UI.HtmlTextWriter writer)  {  writer.Write("接收:");  base.RenderContents(writer);  }    }  }    其生成的HTML如下:  代码如下: <form name="form1" method="post" action="Default.aspx" id="form1">  <div>  <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE1ODYxMzExNjlkZIRGtA8oGwNrNQd7V9ZkX3zxcLan" />  </div>    <div>  <span id="lb1">接收:lb</span>  </div>  </form>