首页 > Web开发 > 详细

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

时间:2016-01-29 07:25:36      阅读:158      评论:0      收藏:0      [点我收藏+]
功能:可以把某个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>

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

原文:http://www.jb51.net/article/48580.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!