This documentation is archived and is not being maintained.

MonthCalendar.SelectionEnd Property

Gets or sets the end date of the selected range of dates.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

public DateTime SelectionEnd { get; set; }
/** @property */
public DateTime get_SelectionEnd ()

/** @property */
public void set_SelectionEnd (DateTime value)

public function get SelectionEnd () : DateTime

public function set SelectionEnd (value : DateTime)

Property Value

A DateTime indicating the last date in the selection range.

Exception typeCondition

ArgumentOutOfRangeException

The date value is less than the MinDate value.

-or-

The date value is greater than the MaxDate value.

If you set the value of the SelectionEnd property to a date that is earlier than the current value of the SelectionStart property, SelectionStart is automatically set equal to SelectionEnd.

If you set a date in SelectionEnd that causes the selection to exceed the number of days specified by the MaxSelectionCount property, the value of SelectionStart is adjusted; SelectionStart is automatically set so that the number of days selected is equal to MaxSelectionCount.

NoteNote

MaxSelectionCount represents the number of days in the selection, not the difference between SelectionStart and SelectionEnd. For example, if MaxSelectionCount is 7 (the default), then SelectionStart and SelectionEnd can be no more than six days apart.

NoteNote

Setting the SelectionRange for a MonthCalendar control that has visual styles enabled will result in the selection range not painting correctly on the control.

The following code example demonstrates how to use the SelectionStart and SelectionEnd properties. To run the example, paste the following code into a form containing a MonthCalendar control named MonthCalendar1, and call the ShowAWeeksVacationOneMonthFromToday method from the form's constructor or Load event-handling method.

// Computes a week one month from today.
private void ShowAWeeksVacationOneMonthFromToday()
{
    System.DateTime today = this.MonthCalendar1.TodayDate;
    int vacationMonth = today.Month + 1;
    int vacationYear = today.Year;

    if (today.Month == 12)
    {
        vacationMonth = 1;
        ++vacationYear;
    }

    // Select the week using SelectionStart and SelectionEnd.
    this.MonthCalendar1.SelectionStart = 
        new System.DateTime(today.Year, vacationMonth, today.Day-1);
    this.MonthCalendar1.SelectionEnd = 
        new System.DateTime(today.Year, vacationMonth, today.Day+6);
}

// Computes a week one month from today.
private void ShowAWeeksVacationOneMonthFromToday()
{
    System.DateTime today = this.monthCalendar1.get_TodayDate();
    int vacationMonth = 1;
    if (today.get_Month() < 12) {
        vacationMonth = today.get_Month() + 1;
    }
    // Select the week using SelectionStart and SelectionEnd.
    this.monthCalendar1.set_SelectionStart(
        new System.DateTime(today.get_Year(),
        vacationMonth, today.get_Day() - 1));
    this.monthCalendar1.set_SelectionEnd(
        new System.DateTime(today.get_Year(),
        vacationMonth, today.get_Day() + 6));
} //ShowAWeeksVacationOneMonthFromToday

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0
Show: