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: 25 Jan 2018 10:59 by ADMIN
ADMIN
Created by: Jack
Comments: 33
Category: Calendar
Type: Feature Request
30
Presently RadCalendar does not support Persian calendar style.

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;  
        }
    }
}
Approved
Last Updated: 15 Aug 2017 10:08 by ADMIN
Currently, you can use reflection in order to access the properties of the fast navigation popup. 

Workaround: 
this.radCalendar1.HeaderNavigationMode = Telerik.WinControls.UI.HeaderNavigationMode.Popup;

CalendarNavigationElement a = this.radCalendar1.CalendarElement.CalendarNavigationElement;
FieldInfo fi = typeof(CalendarNavigationElement).GetField("dropDown", BindingFlags.NonPublic | BindingFlags.Instance);
RadDateTimePickerDropDown dropDown = (RadDateTimePickerDropDown)fi.GetValue(a);
dropDown.PopupOpening += new RadPopupOpeningEventHandler(dropDown_PopupOpening);
Approved
Last Updated: 15 Aug 2017 10:08 by ADMIN
Approved
Last Updated: 15 Aug 2017 10:02 by ADMIN
ADMIN
Created by: Stefan
Comments: 0
Category: Calendar
Type: Feature Request
0

			
Approved
Last Updated: 15 Aug 2017 09:45 by ADMIN
To reproduce:
- Add RadCalendar to a blank form and set its AllowMultipleSelect property to true.
- Select a date and deselect it right after that. You will notice that the background is not changed.
- The cell is actually deselected but it appears as selected since it is the focused cell and the styles are equal.

Workaround: Change the style for the focused state, which will allow the user to distinguish between focused and selected cells.
Approved
Last Updated: 15 Aug 2017 09:33 by ADMIN
When you click on a Navigation Button with the mouse in RadCalendar and hold the button down, then it scrolls automatically to the next/previous views very fast. Same behavior should be supported by the Fast Navigation Buttons.
Approved
Last Updated: 15 Aug 2017 09:21 by ADMIN
HeaderWidth and HeaderHeight properties should be made RadProperties and should be declared at RadCalendarElement. This will allow our users to set these properties in theme.
Approved
Last Updated: 29 Mar 2016 10:30 by ADMIN
To reproduce:
public Form1()
{
    InitializeComponent();
    this.radCalendar1.RangeMinDate = new DateTime(2014, 1, 1);
    this.radCalendar1.RangeMaxDate = new DateTime(2017, 7, 17);
    this.radCalendar1.FocusedDate = new DateTime(2014, 2, 4);
    this.radCalendar1.AllowFastNavigation = true;
    this.radCalendar1.FastNavigationStep = 1; 
    this.radCalendar1.AllowMultipleView = true;
    this.radCalendar1.MultiViewColumns = 4;
    this.radCalendar1.MultiViewRows = 3;
    this.radCalendar1.CurrentViewRow = 0;  
    this.radCalendar1.CurrentViewColumn = 1;  
}

The user expects when fast navigating forward, the view to be shifted with one year = 12 months. However, each next forward fast navigation moves with 11 months. 

Workaround: 

            this.radCalendar1.CurrentViewRow = 0;  
            this.radCalendar1.CurrentViewColumn = 0;
            this.radCalendar1.CalendarElement.PreviousButton.PerformClick();
Approved
Last Updated: 29 Mar 2016 10:29 by ADMIN
The following line does not move MultiMonthView to the specific date:  

radCalendar1.CalendarElement.View.ViewStartDate = new DateTime(DateTime.Now.Year, 1, 1);


Workaround: use RadCalendar's FocusedDate property instead:

radCalendar1.FocusedDate = new DateTime(2014, 1, 1);
Approved
Last Updated: 29 Mar 2016 10:28 by ADMIN
To reproduce: 

1. When set the Disabled to true  of special day has not effect
this.radCalendar1.SpecialDays.Add(new RadCalendarDay(new DateTime(2014,7, 15)));
this.radCalendar1.SpecialDays[0].Disabled = true;

2. When set the Selected and Selectable to false, the special day is still can select and highlight
this.radCalendar1.SpecialDays[0].Selected = false;
this.radCalendar1.SpecialDays[0].Selectable = false;
Approved
Last Updated: 29 Mar 2016 10:27 by ADMIN
Meanwhile, you can workaround this by resetting the property every time you change the number of months that RadCalendar displays. This is shown in the next code snippet:

private void radPageViewPage2_ClientSizeChanged(object sender, EventArgs e)
{
    int numViews = this.radPageViewPage2.Size.Height / 240 + 1;
    radCalendar1.MultiViewRows = numViews;
    radCalendar1.ShowFastNavigationButtons = true;
    radCalendar1.ShowFastNavigationButtons = false;
}
Approved
Last Updated: 29 Mar 2016 10:24 by ADMIN
When a RadRichTextBox control is added as a child to RadCalendar, the Space and Enter key input is stolen by the calendar.

Workaround is available here: http://www.telerik.com/community/forums/getting-visible-dates-from-radcalendar
Completed
Last Updated: 23 Sep 2015 08:01 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Sr.
Comments: 0
Category: Calendar
Type: Feature Request
7

			
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: 26 Dec 2014 12:19 by ADMIN
ADMIN
Created by: Stefan
Comments: 1
Category: Calendar
Type: Feature Request
1
ADD. RadCalendar's TodayButton does not accept shortcuts.
Completed
Last Updated: 20 Oct 2014 14:33 by ADMIN
Resolution: 
Add LabelFormat property to change the format of footer. You can use the following code snippet: 
this.radCalendar1.CalendarElement.CalendarStatusElement.LabelFormat = "yy/MM/dd dddd";
1 2 3