ASP.NET控件开发之修改服务器控件方法浅析

ASP.NET控件开发之修改ASP.NET服务器控件方法是什么呢?下面就向你介绍修改服务器控件的ID和Name的方法:

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的龙湖网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

产生的ID和Name可以通过几个方法重载可以去除

ASP.NET控件开发之修改ASP.NET服务器控件的ID和Name的方法1.

使用HTML

这种方法很好,符合原来html的标签,如htmlLink,则不需要name属性,表单提交需要name属性

第一部重写Control类的ClientID属性.

此属性是只读的

 
 
 
  1. public override string ClientID
  2. {
  3.     get
  4.     {
  5.         return this.ID;
  6.     }
  7. }

这样的话,控件返回的ID就不会很复杂了.

ASP.NET控件开发之修改ASP.NET服务器控件的ID和Name的方法2.

通过表单

重写HtmlInputControl类的Name属性就可以通过了.

以上两点都可以通过System.Web.UI.Adapters.ControlAdapter来实现

ASP.NET控件开发之修改ASP.NET服务器控件的ID和Name的方法3.

通过Web服务器控件

其id和name输出是在AddAttributesToRender方法中,方法会在RenderBeginTag方法中调用.
假设我们要通过System.Web.UI.WebControls.Adapters.WebControlAdapter来实现的话,重写RenderBeginTag方法的话,无法得到控件的TagName,当然如果重新制作控件就可以把TagName属性暴露出来,这样便可以了

会导致RenderEndTag无法输出,难道重写RenderEndTag?,然后一个一个控件的类型判断.或者就真这么做,工作量会比较大些.无法取到TagName比较遗憾.

另外的方法就是重写AddAttributesToRender方法了.不过会牺牲一些功能.

还是推荐使用HTML控件配合System.Web.UI.Adapters.ControlAdapter的使用,就可以抛弃讨厌的嵌套代码了,大家可以配合MVC框架使用.

ASP.NET控件开发之修改ASP.NET服务器控件方法就向你介绍到这里,希望对你有所帮助。

名称栏目:ASP.NET控件开发之修改服务器控件方法浅析
文章源于:http://www.shufengxianlan.com/qtweb/news23/129273.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联