功能:可以把某個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>
前端代碼:
1 <form id="form1" runat="server">2 <div>3 <asp:Label ID="lb1" runat="server" Text="lb"></asp:Label>4 </div>5 </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節點中加入
1 <tagMapping>2 <add tagType="System.Web.UI.WebControls.Label" mappedTagType="CJQ.Web.MyLabel" />3 </tagMapping>
其中自定義控件的代碼是
1 namespace CJQ.Web 2 { 3 public class MyLabel : System.Web.UI.WebControls.Label 4 { 5 PRotected override void RenderContents(System.Web.UI.HtmlTextWriter writer) 6 { 7 writer.Write("接收:"); 8 base.RenderContents(writer); 9 }10 11 }12 }
其生成的HTML如下:
1 <form name="form1" method="post" action="Default.aspx" id="form1">2 <div>3 <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE1ODYxMzExNjlkZIRGtA8oGwNrNQd7V9ZkX3zxcLan" />4 </div>5 6 <div>7 <span id="lb1">接收:lb</span>8 </div>9 </form>
可以看到asp.net 控件已被 自定義控件替換掉了
新聞熱點
疑難解答