Asp.Net Calendar (Takvim) Kontrolü ile Etkinlik Takvimi Yapımı

Sayfalarınızda tarihi göstermek için eklediğiniz Asp.Net Calendar (Takvim) Kontrolünde gün bilgilerinin yanı sıra o gün yapılacak olan etkinlikler veya eklediğiniz notlarında görünmesini isteyebilirsiniz. Şimdi Asp.net ile etkinlik takvimi ve not takvimi nasıl yapılır kısaca anlatacağım.
ilk olarak sayfamıza bir calendar takvim kontrolü ekliyoruz daha sonra etkinlik bilgilerini takvim kontrolü içine dahil edebilmek için OnDayRender özelliğine bir fonksiyon atıyoruz Calendar1_DayRender ismi ile Html Kodları..:

<asp:Calendar ID="Calendar1" runat="server"   Font-Names="Verdana"  OnDayRender="Calendar1_DayRender"   
BackColor="White"   BorderColor="Black"   BorderStyle="Solid"   CellSpacing="1"   Font-Size="9pt"   
ForeColor="Black"   Height="250px"   NextPrevFormat="ShortMonth">  
    <SelectedDayStyle BackColor="#333399" ForeColor="White" />  
    <TodayDayStyle BackColor="#999999" ForeColor="White" />  
    <OtherMonthDayStyle ForeColor="#999999" />  
    <DayStyle BackColor="#CCCCCC" Height="50px" Width="100px" />  
    <NextPrevStyle Font-Bold="True" Font-Size="8pt" ForeColor="White" />  
    <DayHeaderStyle Font-Bold="True" Font-Size="8pt" ForeColor="#333333" Height="8pt" />  
    <TitleStyle BackColor="#333399" BorderStyle="Solid" Font-Bold="True" Font-Size="12pt" ForeColor="White" Height="12pt" />  
</asp:Calendar> 

Şimdi etkinlikleri ekleyeceğimiz bir dizi oluşturup bu diziye etkinlikleri ekleyeceğiz dizimiz iki boyutlu olacak birinci bölümde ay ikinci bölümde gün bilgisi tutulacak etkinliklerimizi ..: etkinlik[4, 23] = “23 nisan milli egemenlik bayramı”; şeklinde ekliyoruz son olarak etkinlikleri takvime eklemek için OnDayRender fonksiyonunda ayın günlerini kontrol ettirip etkinlik varsa label nesnesi ile ekliyoruz.

string[,] etkinlik;

        protected void Page_Load(object sender, EventArgs e)
        {
            etkinlik = new string[13, 32];
            etkinlik[3, 22] = "2.Yazılı";
            etkinlik[4, 23] = "23 nisan milli egemenlik bayramı";
            etkinlik[4, 26] = "Asp.net Sınavı";
            etkinlik[5, 1] = "İşçi Bayramı";
            etkinlik[5, 19] = "Gençlik ve Spor Bayramı";
            
            
        }

        protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
        {
            if (e.Day.IsOtherMonth)
            {
                e.Cell.Controls.Clear();
            }
            else
            {
                Label lbl = new Label();
                lbl.CssClass = "css_appointment";
                string etkin = etkinlik[e.Day.Date.Month, e.Day.Date.Day];
                if (etkin != "")
                {
                    lbl.Text = "<br />";
                    lbl.Text += etkin;
                    e.Cell.Controls.Add(lbl);
                }
            }
        }

etkinliktakvimi