二十四画生的Blog


        ——开始学习Orchard框架
随笔 - 125, 文章 - 8, 评论 - 1461, 阅读 - 85万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

自己用C#编写的日期选择web自定义控件(有修订)

Posted on   二十四画生  阅读(27191)  评论(118编辑  收藏  举报

      做web页面很多要用到日期输入,.net自带的日历控件每次都需要与服务器交互很不方便。为了图省事自己开发了一个web控件。参照用JavaScript编写的日期选择,将其中的JavaScript部分写入控件中就可以了。代码不复杂,拿出来大家共享以下。大家帮忙找找Bug,提提改进意见。


实现效果如下:


源码下载:TestControl.rar
TestControl(v1.0.1).rar(解决了会被select遮挡的问题)

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

如何增加Autopostpack功能:评论中有说明。

解决在用户控件中取值问题:
将原来的:
output.AddAttribute(HtmlTextWriterAttribute.Id,this.ID);
output.AddAttribute(HtmlTextWriterAttribute.Name,this.ID);
改为:
output.AddAttribute(HtmlTextWriterAttribute.Id,this.UniqueID);
output.AddAttribute(HtmlTextWriterAttribute.Name,this.UniqueID);

编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示