Completed
Last Updated: 20 Aug 2019 13:20 by ADMIN
Release R3 2019

By default, if you need to format the cells in RadCalendar, the ElementRender event is an appropriate solution. However, it doesn't process the row/column header cell elements illustrated in the attached screenshot.

Workaround:

            MonthViewElement mve = (MonthViewElement)this.radCalendar1.CalendarElement.CalendarVisualElement;
            foreach (CalendarCellElement cell in mve.TableElement.Children)
            {
                if (cell.Row == 0)
                {
                    cell.DrawFill = true;
                    cell.BackColor = Color.Red;
                } 
            } 

Completed
Last Updated: 05 Jun 2018 08:20 by Dimitar
How to reproduce:
public partial class RadForm1 : Telerik.WinControls.UI.RadForm
{
    public RadForm1()
    {
        InitializeComponent();


        ThemeResolutionService.ApplicationThemeName = "VisualStudio2012Light";

        this.radCalendar1.ShowRowHeaders = true;
        this.radCalendar1.AllowMultipleView = true;
        this.radCalendar1.MultiViewRows = 2;
        this.radCalendar1.MultiViewColumns = 2;
        this.radCalendar1.ShowFooter = true;
        this.radCalendar1.ShowOtherMonthsDays = false;
    }
}

Workaround: 
protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);

    MultiMonthViewElement viewElement = this.radCalendar1.CalendarElement.CalendarVisualElement as MultiMonthViewElement;
    CalendarMultiMonthViewTableElement tableElement = viewElement.FindDescendant<CalendarMultiMonthViewTableElement>() as CalendarMultiMonthViewTableElement;
    if (tableElement == null)
    {
        return;
    }

    foreach (RadElement child in tableElement.Children)
    {
        MonthViewElement monthViewElement = child as MonthViewElement;
        if (monthViewElement == null)
        {
            continue;
        }


        monthViewElement.FindDescendant<CalendarCellElement>().DrawBorder = false;
    }
}
Completed
Last Updated: 02 Apr 2018 07:55 by Dimitar
Workaround:
public partial class RadForm1 : Telerik.WinControls.UI.RadForm
{
    public RadForm1()
    {
        InitializeComponent();

        this.radDateTimePicker1.DateTimePickerElement.Calendar.ElementRender += Calendar_ElementRender;
    }

    private void Calendar_ElementRender(object sender, RenderElementEventArgs e)
    {
        if (this.radDateTimePicker1.DateTimePickerElement.Calendar.ZoomLevel == ZoomLevel.Days)
        {
            return;
        }

        CalendarCellElement element = e.Element as CalendarCellElement;
        if (element != null)
        {
            element.WeekEnd = false;
        }
    }
}
Completed
Last Updated: 15 Aug 2017 11:03 by ADMIN
To reproduce: use the following code snippet:

            radCalendar1.AllowMultipleSelect = true;
            radCalendar1.ShowRowHeaders = true;
            radCalendar1.AllowRowHeaderSelectors = true;
 If you select several cells, they all are selected. Then, click the header row cell. You will notice that the cells from this row are selected but all previously selected cells are cleared. The attached gif file illustrates the behavior. 

Workaround: use the MouseDown event to store the currently selected cells and then on MouseUp restore the missing selection:

public class MyCalendar : RadCalendar
{
    List<DateTime> selectedDays = new List<DateTime>();

    protected override void OnMouseDown(MouseEventArgs e)
    {
        CalendarCellElement cell = this.ElementTree.GetElementAtPoint(e.Location) as CalendarCellElement;
        if (cell != null)
        {
            bool isHeader = (bool)cell.GetValue(CalendarCellElement.IsHeaderCellProperty);
            if (isHeader)
            {
                selectedDays.Clear();
                foreach (DateTime date in this.SelectedDates)
                {
                    selectedDays.Add(date);
                }
            }
        }
        base.OnMouseDown(e);
    }

    protected override void OnMouseUp(MouseEventArgs e)
    {
        base.OnMouseUp(e);
        foreach (DateTime date in selectedDays)
        {
            if (!this.SelectedDates.Contains(date))
            {
                this.SelectedDates.Add(date);
            }
        }
    }

    public override string ThemeClassName  
    { 
        get 
        { 
            return typeof(RadCalendar).FullName;  
        }
    }
}
Completed
Last Updated: 25 May 2015 15:05 by ADMIN
Use the following code snippet:

private void radCalendar1_ViewChanged(object sender, EventArgs e)
{
    this.radCalendar1.SpecialDays.Clear();

    RadCalendarDay day = new RadCalendarDay(new DateTime(2014,04,15));
    radCalendar1.SpecialDays.Add(day);
    PictureBox pictureBox = new PictureBox();
    pictureBox.SizeMode = PictureBoxSizeMode.StretchImage;
    pictureBox.Image = Properties.Resources.home;
    RadHostItem hostItem = new RadHostItem(pictureBox);
    day.TemplateItem = hostItem;
}

Clicking the navigation buttons does not navigate you to the respective month.

Workaround: assign the RadCalendarDay.TemplateItem before adding the day in the SpecialDays collection:
private void radCalendar1_ViewChanged(object sender, EventArgs e)
{
    this.radCalendar1.SpecialDays.Clear();

    RadCalendarDay day = new RadCalendarDay(new DateTime(2014,04,15));
    PictureBox pictureBox = new PictureBox();
    pictureBox.SizeMode = PictureBoxSizeMode.StretchImage;
    pictureBox.Image = Properties.Resources.home;
    RadHostItem hostItem = new RadHostItem(pictureBox);
    day.TemplateItem = hostItem; 
    radCalendar1.SpecialDays.Add(day);
}

Note: if the initial code is used in the ViewChanging event, clicking the navigation buttons leads to freezing the application.
Completed
Last Updated: 21 May 2015 13:36 by ADMIN
To reproduce: use the following code snippet:

public Form1()
{
    InitializeComponent();

    this.radCalendar1.AllowMultipleView = true;
    this.radCalendar1.MultiViewRows = 3;
    this.radCalendar1.MultiViewColumns = 4;
    this.radCalendar1.AllowMultipleSelect = true;
    this.radCalendar1.ShowRowHeaders = true;
    this.radCalendar1.ShowColumnHeaders = true;
    this.radCalendar1.AllowColumnHeaderSelectors = true;
    this.radCalendar1.AllowRowHeaderSelectors = true;
    this.radCalendar1.ShowViewSelector = true;
    this.radCalendar1.AllowViewSelector = true;

  
    this.radCalendar1.RangeMinDate = new DateTime(2014, 3, 3);
    this.radCalendar1.RangeMaxDate = new DateTime(2014, 7, 27);
    this.radCalendar1.FocusedDate = new DateTime(2014, 5, 5);
}

Please refer to the attached gif file.

Workaround: 
private void Calendar_MouseDown(object sender, MouseEventArgs e)
{
    CalendarCellElement cell = this.radCalendar1.CalendarElement.ElementTree.GetElementAtPoint(e.Location) as CalendarCellElement;
    if (cell != null && cell.Date < this.radCalendar1.RangeMinDate && (bool)cell.GetValue(CalendarCellElement.IsHeaderCellProperty) == true)
    {
        foreach (MonthViewElement monthView in this.radCalendar1.CalendarElement.CalendarVisualElement.Children[0].Children.Last().Children)
        {
            {
                foreach (CalendarCellElement monthCell in monthView.TableElement.Children)
                {
                    if (monthCell.Date.Month == cell.Date.Month && monthCell.Date.Year == cell.Date.Year &&
                        this.radCalendar1.RangeMinDate <= monthCell.Date)// &&
                       // (bool)cell.GetValue(CalendarCellElement.IsHeaderCellProperty) == false)
                    {
                        if (char.IsLetter(cell.Text[0]))
                        {
                            //perform column selection
                            if (monthCell.ControlBoundingRectangle.X == cell.ControlBoundingRectangle.X)
                            {
                                this.radCalendar1.SelectedDates.Add(monthCell.Date);
                            }
                        }
                        else
                        {
                            //perform row selection
                            if (monthCell.ControlBoundingRectangle.Y == cell.ControlBoundingRectangle.Y)
                            {
                                this.radCalendar1.SelectedDates.Add(monthCell.Date);
                            }
                        }
                    }
                }
            }
        }
    }
}
Completed
Last Updated: 20 Oct 2014 14:26 by ADMIN
To reproduce: 
1. Drag and drop RadCalendar to form
2. Set design time the AllowMultipleView property to true
3. Set design time value of the MultiViewRows and MultiViewColumns properties to 2
4. When save the form or run the project an exception is thrown. 

Workaround: 
Set the AllowMultipleView and MultiViewColumns properties with code.
Completed
Last Updated: 14 Jul 2014 07:50 by ADMIN
To reproduce: use the following code snippet:

public Form1()
{
    InitializeComponent();
    this.radCalendar1.AllowMultipleView = true;
    this.radCalendar1.MultiViewRows = 3;
    this.radCalendar1.HeaderNavigationMode = Telerik.WinControls.UI.HeaderNavigationMode.Zoom;
}
Completed
Last Updated: 14 Jul 2014 07:49 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 1
Category: Calendar
Type: Bug Report
0
FIX. RadCalendar - Incorrect week numbering

Use the following code snippet:

radCalendar1.AllowMultipleView = true;
radCalendar1.MultiViewColumns = 1;
radCalendar1.MultiViewRows = 5;
radCalendar1.ShowRowHeaders = true;

CultureInfo ci = new CultureInfo("en-US");
CalendarWeekRule weekRule = CalendarWeekRule.FirstDay;
ci.DateTimeFormat.CalendarWeekRule = weekRule;
radCalendar1.Culture = ci;

Expected behavior: when the CalendarWeekRule is FirstDay, 01/01/2013 should be displayed as week 1
Completed
Last Updated: 06 Jun 2014 06:46 by ADMIN
The event should fire so one can customize the appearance on loading.
Completed
Last Updated: 05 Jun 2014 07:08 by ADMIN
ADMIN
Created by: Nikolay
Comments: 0
Category: Calendar
Type: Bug Report
1
Although RadCalendarDay has a Tooltip property, it does not show any tooltips.
Completed
Last Updated: 23 Apr 2014 12:56 by ADMIN
ADMIN
Created by: Martin Vasilev
Comments: 0
Category: Calendar
Type: Bug Report
0
Set the RadCalendar's NavigationNextImage and NavigationPrevImage properties in design time through property grid. The assigned images is shown in the designer. When run the application the images do not be shown.
Completed
Last Updated: 23 Aug 2012 05:41 by ADMIN
To reproduce: select 01/01/0001 and click the previous button
Completed
Last Updated: 14 Dec 2011 11:08 by ADMIN
The border of the special days in RadCalendar does not change on mouse leave.
Completed
Last Updated: 02 Dec 2011 07:45 by ADMIN
When RadCalendar is docked inside a panel which is docked in a form and the calendar is in MultiMonth view, the month headers are not displayed properly.
Completed
Last Updated: 28 Nov 2011 03:28 by ADMIN
The month selector of RadCalendar should fire Calendar.Navigating and Calendar.Navigated events.
Completed
Last Updated: 25 Oct 2011 04:10 by ADMIN
RadCalendar throws an exception when you change the culture to ar-SA.
Completed
Last Updated: 14 Apr 2011 05:05 by ADMIN
When changing CurrentViewRow or CurrentViewColumn of RadCalendar, the header is shown even when the ShowHeader is set to false.
Completed
Last Updated: 28 Mar 2011 05:13 by ADMIN
Setting SelectedDate via code in RadCalendar does not work when AllowMultipleSelect is false.
Completed
Last Updated: 07 Mar 2011 06:54 by ADMIN
RadCalendar crashes when the focused date is set to a value out of the current view and adding rows/columns is performed.
1 2