ASP.NET2.0中Calendar的使用(添加自己的日期备注)

一直以来我不太喜欢使用.net里的Calendar控件.主要是因为他每点击一次都会刷新.随着AJAX.NET的推出这个控件也有了一丝的用处.所以也就研究一下

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;



public partial class _Default : System.Web.UI.Page 

{

    //声明一个数组放置对应的节日

    //为了使用方便定义的是13月,32天

    string[,] days=new string[13,32];



    protected void Page_Load(object sender, EventArgs e)

    {

        days[1, 1] = "元宵节";

    }

    protected void Button1_Click(object sender, EventArgs e)

    {

        

    }



    /// <summary>

    /// 编写DayRender事件

    /// </summary>

    /// <param name="sender"></param>

    /// <param name="e"></param>

    protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)

    {

        CalendarDay d = e.Day;//得到当前单元格的日期信息

        TableCell c = e.Cell;//得到单元格



        if (d.IsOtherMonth)//判断如果不是本月的则把单元格内的内容清空

        {

            c.Controls.Clear();

        }

        else

        {

            string myday=days[d.Date.Month,d.Date.Day];

            if (myday!=null)//如果有相关日期就.....

            {

                c.Controls.Clear();//可以清除以后再添加自己的控件

                Button b = new Button();

                b.Text="a";

                c.Controls.Add(b);//例如我这里添加的是一个按钮.把原来的1号给干掉了.orz

                c.Controls.Add(new LiteralControl("<a title='"+myday+"'>★</a>"));

                c.ForeColor = System.Drawing.Color.Red;//然后还可以添加一些单元格的内容

            }

        }





    }

}

运行效果

image

你可能感兴趣的:(Calendar的使用)