Asp.net Calendar (Takvim) Kontrolüne Checkbox Ekleme

Sayfanıza eklediğiniz calendar (takvim) kontrolüne gün seçimini yapabilmek için gün hücrelerine Checkbox ekleme işlemi uygulaması
checkboxtakvim1

Html kodları

 <h2 style="color:SlateBlue; font-style:italic;">  
            Takvim Kontrolüne Checkbox Ekleme  
        </h2>  
        <hr width="600" align="left" color="SlateGray" />  
        <asp:BulletedList ID="BulletedList1"  runat="server" Visible="false">  
        </asp:BulletedList>  
        <asp:Calendar  ID="Calendar1" runat="server" NextPrevFormat="FullMonth"  ForeColor="WhiteSmoke"  
            SelectionMode="Day"  DayNameFormat="Full"    Font-Names="Book Antiqua"  
            Font-Size="Medium"  OnSelectionChanged="Calendar1_SelectionChanged"   OnDayRender="Calendar1_DayRender"  >  
            <DayHeaderStyle    BackColor="OliveDrab"    />  
            <DayStyle  BackColor="DarkOrange"  BorderColor="Orange" BorderWidth="1"  
                 Font-Bold="true"   Font-Italic="true"  Font-Size="Large"  />  
            <NextPrevStyle   Font-Italic="true"   Font-Names="Arial CE"  />  
            <SelectedDayStyle   BackColor="DarkOrange"  BorderColor="Pink"   />  
            <TitleStyle   BackColor="MidnightBlue"   Height="36"  
                 Font-Size="Large"  Font-Names="Courier New Baltic"   />  
        </asp:Calendar>  
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace calendar
{
    public partial class checkboxcalendar : System.Web.UI.Page
    {
        protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)
        {
            if (e.Day.IsSelected)
            {
                CheckBox CheckBox1 = new CheckBox();
                CheckBox1.Checked = true;
                CheckBox1.Width = 25;
                CheckBox1.Enabled = false;
                e.Cell.Controls.AddAt(1, CheckBox1);
                e.Cell.Font.Size = FontUnit.XLarge;
            }
        }

        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (Page.IsPostBack && Calendar1.SelectedDates.Count == 1)
            {
                Calendar1.SelectedDates.Clear();
            }
        }

        protected void Calendar1_SelectionChanged(object sender, System.EventArgs e)
        {
            ListItem li = new ListItem();
            li.Text = Calendar1.SelectedDate.ToShortDateString();

            int itemCounter = 0;
            foreach (ListItem litem in BulletedList1.Items)
            {
                if (litem.Text == li.Text)
                {
                    itemCounter += 1;
                }
            }

            if (itemCounter > 0)
            {
                BulletedList1.Items.Remove(li);
            }
            else
            {
                BulletedList1.Items.Add(li);
            }

            Calendar1.SelectedDates.Clear();
            SelectedDatesCollection dates = Calendar1.SelectedDates;

            foreach (ListItem litem in BulletedList1.Items)
            {
                DateTime date = Convert.ToDateTime(litem.Text);
                dates.Add(date);
            }
        }  
    }
}
  • gsezginer

    teşekkürler…

  • gsezginer

    sitenin yetkilisi veya yetkililerine teşekkrüler. Gerçekten çok faydalı ve etkili bir siteymiş burası. Çok beğendim şahsen.
    Aslında ben Uzun zamandır asp.net ile scheduler uygulaması arıyordum büyük bir hevesle bu sitede aradım ama bulamadım. yetkililerin en kısa süede bu işe de bir el atacağını ümit ediyorum. İyi çalışmalar….

    • BilisimOgretmeni

      güzel yorumlarınız için teşekkürler bu konu ile alakalı bir örnek yakın zamanda sitemize eklenecektir, sitemizi takip edin