编写C#日期时间控件的几种方法

参照用JavaScript编写的日期选择,将其中的JavaScript部分写入控件中就可以了。C#日期时间控件代码不复杂,拿出来大家共享以下。大家帮忙找找Bug,提提改进意见。

成都创新互联公司专注于企业全网整合营销推广、网站重做改版、普洱网站定制设计、自适应品牌网站建设、html5商城网站制作、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为普洱等各大城市提供网站开发制作服务。

实现效果如下:

 Bug:控件放到frame 的页面里面使用得时候就会出错:“parent.event 为空或不是对象”
将InputCalendar.cs中output.WriteLine("parent.event.cancelBubble=true;");一句去掉即可。
这一句的意义是:设置或获取当前事件是否要在事件句柄中向上冒泡。当前应用中好像没有用,所以去掉也不要紧。

如何增加Autopostpack功能:

 
 
 
 
  1. if (autopostback==true )   
  2. {   
  3. output.WriteLine ("javascript:"+Page.GetPostBackEventReference(this)+";");   
  4. }   
  5. //添加了一个AUTOPOSTBACK功能。  

在头部加上如下代码,即可实现选择Autopostpack功能了。

 
 
 
 
  1. private bool autopostback=true;   
  2. [Bindable(true),   
  3. Category("Appearance"),   
  4. DefaultValue(true)]   
  5. public bool AutoPostBack   
  6. {   
  7. get   
  8. {   
  9. return autopostback;   
  10. }   
  11. set   
  12. {   
  13. autopostback=value;   
  14. }   

解决在用户C#日期时间控件控件中取值问题:

将原来的C#日期时间控件:

 
 
 
 
  1. output.AddAttribute(HtmlTextWriterAttribute.Id,this.ID);   
  2. output.AddAttribute(HtmlTextWriterAttribute.Name,this.ID);  

改为:

 
 
 
 
  1. output.AddAttribute(HtmlTextWriterAttribute.Id,this.UniqueID);   
  2. output.AddAttribute(HtmlTextWriterAttribute.Name,this.UniqueID);  

将原来的C#日期时间控件:

 
 
 
 
  1. output.AddAttribute(HtmlTextWriterAttribute.Id,this.ID); output.AddAttribute(HtmlTextWriterAttribute.Name,this.ID); 改为: output.AddAttribute(HtmlTextWriterAttribute.Id,this.UniqueID); output.AddAttribute(HtmlTextWriterAttribute.Name,this.UniqueID); 

当前文章:编写C#日期时间控件的几种方法
标题来源:http://www.shufengxianlan.com/qtweb/news42/1542.html

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

广告

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