ASP Net Controls ASP.Net Tutorial

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"  Inherits="CalenderRender" %>



    Calender DayRender


    
    

    

Using DayRender


                      runat="server" 
                  BackColor="White" 
                  BorderColor="Black" 
                  BorderStyle="Solid" 
                  CellSpacing="1" 
                  Font-Names="Verdana" 
                  Font-Size="9pt" 
                  ForeColor="Black" 
                  Height="504px" 
                  NextPrevFormat="ShortMonth" 
                  Width="664px" 
                  OnDayRender="calRender_DayRender" 
                  OnSelectionChanged="calRender_SelectionChanged"  >
        
        
        
        
        
        
                                Font-Size="8pt" 
                        ForeColor="#333333" 
                        Height="8pt" />
                            BorderStyle="Solid" 
                    Font-Bold="True" 
                    Font-Size="9pt"
                    ForeColor="White" Height="9pt" />
            
    
    
    

    


File: Default.aspx.cs
using System.Collections;
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;
using System.Text;
public class CalenderEvent
{
  public enum EventTypes
  {
    AllDayEvent, Appointment, ToDoReminder
  }
  private string _shortDescription;
  private string _fullDescription;
  private DateTime _eventDate;
  private EventTypes _eventType;
  public CalenderEvent(string shortDescription, string fullDescription, DateTime eventDate, EventTypes eventType)
  {
    _shortDescription = shortDescription;
    _fullDescription = fullDescription;
    _eventDate = eventDate;
    _eventType = eventType;
  }
  public override string ToString()
  {
    StringBuilder sb = new StringBuilder();
    sb.Append(this.Date.ToShortDateString());
    sb.Append(" -- ");
    sb.Append(this.EventTypeString);
    sb.Append("
");
    sb.Append(FullDescription);
    return sb.ToString();    
  }
  public string FullDescription
  {
    get { return _fullDescription; }
    set { _fullDescription = value; }
  }
  public string ShortDescription
  {
    get { return _shortDescription; }
    set { _shortDescription = value; }
  }
  public DateTime Date
  {
    get { return _eventDate; }
    set { _eventDate = value; }
  }
  public EventTypes Type
  {
    get { return _eventType; }
    set { _eventType = value; }
  }
  public string EventTypeString
  {
    get
    {
      if (this.Type == EventTypes.AllDayEvent)
        return "All Day Event";
      else if (this.Type == EventTypes.Appointment)
        return "Appointment";
      else
        return "To Do Reminder";
    }
  }
  public string ImageFile
  {
    get
    {
      if (this.Type == EventTypes.AllDayEvent)
        return "cal_allday.gif";
      else if (this.Type == EventTypes.Appointment)
        return "cal_appointment.gif";
      else
        return "cal_todo.gif";
    }
  }
}
public partial class CalenderRender : System.Web.UI.Page
{
  private ArrayList _events;
    protected void Page_Load(object sender, EventArgs e)
    {
    FillCalender();
    }
  private void FillCalender()
  {
    _events = new ArrayList();
    _events.Add(new CalenderEvent("A", "event a", DateTime.Now, CalenderEvent.EventTypes.Appointment));
    _events.Add(new CalenderEvent("B", "event b", DateTime.Now.AddDays(2.0), CalenderEvent.EventTypes.ToDoReminder));
    _events.Add(new CalenderEvent("C", "event c", DateTime.Now.AddDays(5.0), CalenderEvent.EventTypes.AllDayEvent));
  }
  protected void calRender_DayRender(object sender, DayRenderEventArgs e)
  {
    DateTime renderDay = e.Day.Date;
    foreach (CalenderEvent cEvent in _events)
    {
      if (renderDay.ToShortDateString() == cEvent.Date.ToShortDateString())
      {
        Image img = new Image();
        img.ImageUrl = "~/images/" + cEvent.ImageFile;
        img.ToolTip = cEvent.ShortDescription;
        img.ImageAlign = ImageAlign.Middle;
        e.Cell.Controls.Add(img);
      }
    }
  }
  protected void calRender_SelectionChanged(object sender, EventArgs e)
  {
    DateTime selectDay = calRender.SelectedDate;
    string message = "";
    foreach (CalenderEvent cEvent in _events)
    {
      if (selectDay.ToShortDateString() == cEvent.Date.ToShortDateString())
      {
        message = cEvent.ToString();
      }
    }
    if (message == "")
      labMessage.Text = "No event scheduled for " + selectDay.ToShortDateString();
    else
      labMessage.Text = message;
  }
}