Declined
Last Updated: 06 Jun 2014 07:50 by ADMIN
ADMIN
Created by: Nikolay
Comments: 0
Category: Calendar
Type: Bug Report
0
RadCalendar should support month selection. I.e, the end-user should be able to press a single button, and all the cells from the current month should become selected.

Resolution: 

#1 This behavior could be achieved very easy with current API, so we are thinking  that there is no need to implement it in our RadCalendar as embedded functionality. 

For example: 

C#

            this.radCalendar1.AllowMultipleSelect = true;
            for (int i = 1; i <= DateTime.DaysInMonth(DateTime.Now.Year,DateTime.Now.Month); i++)
            {
                this.radCalendar1.SelectedDates.Add(new DateTime(DateTime.Now.Year, DateTime.Now.Month, i));
            }
VB

Me.radCalendar1.AllowMultipleSelect = True
For i As Integer = 1 To DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month)
Me.radCalendar1.SelectedDates.Add(New DateTime(DateTime.Now.Year, DateTime.Now.Month, i))
Next

#2 You can set ShowOtherMonthsDays to false and use ViewSelector. 

For example: 

C# 
this.radCalendar1.AllowMultipleSelect = true;
this.radCalendar1.AllowViewSelector = true;
this.radCalendar1.ShowViewSelector = true;
this.radCalendar1.ShowOtherMonthsDays = false;
VB
Me.radCalendar1.AllowMultipleSelect = True
Me.radCalendar1.AllowViewSelector = True
Me.radCalendar1.ShowViewSelector = True
Me.radCalendar1.ShowOtherMonthsDays = False
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;
        }
    }
}
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: 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();
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.
1 2 3