asp.NET Calarder日历控件支持节日提示

下面先熟悉下Calarder控件的常用属性:

SelectionMode:是指定是否可选择天、周、整月,是一个CalendarSelectionMode枚举;

SelectedDate:是得到或设置当前选择的时间,是一个DateTime结构;

VisibleDate:是得到或设置日历显示的日期,是一个DateTime结构;

PrevMonthText:是切换上个月的符号,可以用‘上个月’表示,是string类型;

NextMonthText:是切换下个月的符号,可以用‘下个月’表示,是string类型;

SelectMonthText:是显示选择整个月的符号,可以用‘选择整月’表示,是string类型;

SelectWeekText:是显示选择整个周的符号,可用‘选择’表示,是string类型;

ShowGridLines:是否显示出网格线,是Boolean类型;

常用事件:

SelectionChanged:当选择一个日期时触发;

DayRender:当在加载日历控件时触发,相当于OnRender事件;

VisibleMonthChanged:只要对月份进行操作都触发;

下面进入正题,怎么实现自定义日历控件:

1.在Page_Init方法中实例化个String型二维数组分别是以月份和天数做长度,再把对应日期的节日写出来以便后面显示,如:

 代码如下 复制代码

private string[][] arr;

protected void Page_Init(object sender, EventArgs e)
        {
             arr = new string[13][] ;//分别为 月
             for (int i = 0; i < 13; i++)
             {
                 arr[i] =new string[32];//为年、月进行赋值
             }
             arr[1][1] = "元旦节";
             arr[2][14] = "情人节";
             arr[3][8] = "妇女节";
             arr[3][20] = "姐姐的生日";
             arr[3][12] = "植树节";
             arr[4][16] = "妈妈的生日";
             arr[4][29] = "我的生日";
             arr[5][1] = "劳动节";
             arr[6][1] = "儿童节";
             arr[7][1] = "建党节";
             arr[8][1] = "建军节";
             arr[8][10] = "爸爸的生日";
             arr[9][10] = "教师节";
             arr[10][1] = "国庆节";
             arr[12][24] = "平安夜";
             arr[12][25] = "圣诞节";
            
        }

2.主要在DayRender事件进行操作;

 代码如下 复制代码
 protected void Calendar3_DayRender(object sender, DayRenderEventArgs e)
        {
            CalendarDay day = e.Day;//设置当前日期
            TableCell cells = e.Cell;//设置表格
            if (day.IsOtherMonth)//如果是其它节内容就清除本节内容Calendar是个日期限制的;
            {
                cells.Controls.Clear();
            }
            else
            {
                try
                {
                    string txt = arr[day.Date.Month][day.Date.Day];//得到完整的月、日与数组进行匹配
                    if (!string.IsNullOrEmpty(txt))//判断当前是否有节日
                    {
                        cells.Controls.Add(new LiteralControl(string.Format("<br><font color=red>{0}</font>", txt)));//把这个 红色的字符串 加在显示的日期后面
                    }
                }
                catch (Exception)
                {
                    Response.Write("<font color='red'><h1>页面错误!</h1></font>");
                }
            }
        }

到了这里就可完成显示了,但我们想得到博客园那样显示出链接的日历,比如:今天发了篇博客,就要把今天的日期高亮显示并具有超链接,那又该怎么实现呢?第二篇博客再讲述。

时间: 2024-08-01 09:09:57

asp.NET Calarder日历控件支持节日提示的相关文章

ASP.NET中日历控件和JS版日历控件的使用方法(第5节)_实用技巧

今天小编带大家以做任务的形式了解ASP.NET中日历控件的使用方法,主要任务内容: 1.添加一个日历,设置日期以蓝色的完整名称显示,周末以黄色背景红色文字显示,而当前日期使用绿色背景显示,用户可以选择一天.一周或整个月,被选的天/周/月使用灰色背景色来显示.当选中一个日期后,把时间显示在下面的一个文本框中,效果如图所示: 2.设计一个注册页面,使用js日历控件帮助用户输入出生日期.效果如图所示: 学习项目一  Calendar日历控件 1.在站点下创建一个Calendar页面,并在页面上拖放一个

ASP.NET让FileUpload控件支持浏览自动上传功能的解决方法_实用技巧

ASP.NET的FileUpload控件默认是不支持服务端的onchange事件的,此时可以用一种变通的方法来实现这一功能. 这就需要借用客户端的onchange事件,调用__doPostBack方法来用LinkButton的OnClick事件模拟一个事件触发的过程,具体代码如下: 客户端: <asp:FileUpload ID="fuPhoto" onchange="javascript:__doPostBack('lbUploadPhoto','')" r

JavaScript日历控件插件使用详解(支持中文英文繁体)

kimsoft-jscalendar一款优秀的#JavaScript#日历控件,kimsoft-jscalendar.它小巧,单文件:支持多语言:兼容ie6.0+, firefox1.0+, Opera9,其它浏览器未测试:回显选定的时间:Apache license 2.0,商业友好.用 iframe 解决 IE 中层在 select 控件上显示的问题 一.什么是 kimsoft-jscalendar 一个简洁的avaScript日历控件,可在Java Web项目,.NET Web 项目中使用

梅花雨的日历控件在ASP.NET2.0下不可用的解决方法

asp.net|解决|控件|日历 梅花雨的日历控件的确很好用,可是在asp.net 2.0下,会发现安以往的方式用不起了,js报错"缺少对象".解决方法如下 1.<%@ Page Language="C#" CodePage="936"..... 一定加入936 ,否则出错 2.去掉 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu

ASP.net下的前台日历控件源代码

asp.net|控件|日历|源代码 #region 声明//----------------------------------------------------------------------//// 作者: 李淼(Nick.Lee)//// ASP.net下的前台日历控件源代码(不刷新页面) // 时间:2005-3-15 // boyorgril@msn.com// QQ:16503096//注意:引用请标明出处,谢谢//-------------------------------

ASP.net下的前台日历控件源代码(不刷新页面)

asp.net|控件|日历|刷新|页面|源代码 #region 声明//----------------------------------------------------------------------//// 作者: 李淼(Nick.Lee)//// ASP.net下的前台日历控件源代码(不刷新页面) // 时间:2005-3-15 // boyorgril@msn.com// QQ:16503096//注意:引用请标明出处,谢谢//-------------------------

改造asp.net日历控件为弹出式日期选择控件和GridView呈现长文本字段的两个技巧

asp.net中自带了一个非常不错的日历控件,但在其呈现方式上还是稍有欠缺.现在我们用一个小技巧,可以轻松创建一个弹出式日期.自此你再也不用去网上找那个带了很多脚本代码的JS制作的弹出式日期控件了. 实现,方式很简单:只需在页面中加入一点Javascript和一些CSS,就可以制作一个简单的弹出式日期选择器. 其中,.aspx代码如下: <head id="Head1" runat="server"> <title>无标题页</titl

关于asp.net日历控件

问题描述 Asp.net日历控件中怎样加上阴历? 解决方案 解决方案二:网上可以找到阴历的计算方法,然后把它和公历一起放到控件显示就是了解决方案三: 解决方案四:网上现成的应该很多的解决方案五:带农历的日历控件,搜索下很多或用万年历解决方案六:去网上找吧,www.2345.com导航网站右上角的的那个日历控件就可以拿下来用的解决方案七:usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Web;usingSyste

iOS开发一款小巧简洁的日历控件

iOS开发一款小巧简洁的日历控件 一.引言         日 历是iOS开发中有时会用到的一个UI控件,网上开源的代码也很多,我浏览过一些,大致有两种模式,一种是日历的逻辑由开发者自己实现,通过计算闰年与平 年来确定月份天数,另外一种模式是通过NSDate这个时间类,来获取日历的信息.我个人认为后一种更加安全,代码性能也会更加优质,下面就是我用这种模 式实现的一个日历控件. 二.设计思路 1.先来看下效果吧                     2.我们需要实现的功能 (1)每行7天,对应星