# C1.Schedule.RecurrencePattern

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Schedule_RecurrencePattern" data-uid="C1.Schedule.RecurrencePattern" class="text-break">RecurrencePattern Class
</h1>
  <div class="markdown level0 summary"><p>The <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a> class contains information
that describes the recurrence pattern and range
of the associated <a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> object.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><span class="xref">RecurrencePattern</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.componentmodel.inotifypropertychanged">INotifyPropertyChanged</a></div>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.runtime.serialization.iserializable">ISerializable</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.Schedule.html">C1.Schedule</a></h6>
  <h6><strong>Assembly</strong>: C1.ScheduleCore.dll</h6>
  <h5 id="C1_Schedule_RecurrencePattern_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class RecurrencePattern : INotifyPropertyChanged, ISerializable</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class RecurrencePattern
    Implements INotifyPropertyChanged, ISerializable</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Schedule_RecurrencePattern__ctor_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_" data-uid="C1.Schedule.RecurrencePattern.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
          <a class="xref" href="C1.Schedule.RecurrencePattern.-ctor.html#C1_Schedule_RecurrencePattern__ctor_System_Runtime_Serialization_SerializationInfo_System_Runtime_Serialization_StreamingContext_">RecurrencePattern(SerializationInfo, StreamingContext)</a>
        </td>
        <td class="markdown level1 summary"><p>Special constructor for deserialization.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_DayOfMonth" data-uid="C1.Schedule.RecurrencePattern.DayOfMonth">
          <a class="xref" href="C1.Schedule.RecurrencePattern.DayOfMonth.html#C1_Schedule_RecurrencePattern_DayOfMonth">DayOfMonth</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the number of the day in its respective month on which
each occurrence will occur. Applicable only when the <a class="xref" href="C1.Schedule.RecurrencePattern.RecurrenceType.html#C1_Schedule_RecurrencePattern_RecurrenceType">RecurrenceType</a>
property is set to <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_Monthly">Monthly</a>
or <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_Yearly">Yearly</a>.
The default value is 1.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_DayOfWeekMask" data-uid="C1.Schedule.RecurrencePattern.DayOfWeekMask">
          <a class="xref" href="C1.Schedule.RecurrencePattern.DayOfWeekMask.html#C1_Schedule_RecurrencePattern_DayOfWeekMask">DayOfWeekMask</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="C1.Schedule.WeekDaysEnum.html">WeekDaysEnum</a> value representing the mask
for week days on which the recurring appointment occurs.
Monthly and yearly patterns are only valid for a single day.
Weekly patterns are only valid as the Or of the <a class="xref" href="C1.Schedule.RecurrencePattern.DayOfWeekMask.html#C1_Schedule_RecurrencePattern_DayOfWeekMask">DayOfWeekMask</a>.
The default value is 0.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Description" data-uid="C1.Schedule.RecurrencePattern.Description">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Description.html#C1_Schedule_RecurrencePattern_Description">Description</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the human-readable description of the <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a> object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Duration" data-uid="C1.Schedule.RecurrencePattern.Duration">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Duration.html#C1_Schedule_RecurrencePattern_Duration">Duration</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.timespan">TimeSpan</a> value indicating
the duration of each occurrence in the recurrence pattern.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_EndTime" data-uid="C1.Schedule.RecurrencePattern.EndTime">
          <a class="xref" href="C1.Schedule.RecurrencePattern.EndTime.html#C1_Schedule_RecurrencePattern_EndTime">EndTime</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetime">DateTime</a> value indicating
the end time for the given occurrence of the recurrence pattern.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Exceptions" data-uid="C1.Schedule.RecurrencePattern.Exceptions">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Exceptions.html#C1_Schedule_RecurrencePattern_Exceptions">Exceptions</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the <a class="xref" href="C1.Schedule.AppointmentList.html">AppointmentList</a> object which holds the list
of <a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> objects that define the exceptions to that series
of appointments. <a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> objects are added to
the <a class="xref" href="C1.Schedule.RecurrencePattern.Exceptions.html#C1_Schedule_RecurrencePattern_Exceptions">Exceptions</a> whenever a property in the corresponding
<a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> object is altered.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Info" data-uid="C1.Schedule.RecurrencePattern.Info">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Info.html#C1_Schedule_RecurrencePattern_Info">Info</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="C1.Schedule.CalendarInfo.html">CalendarInfo</a> defining calendar settings.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Instance" data-uid="C1.Schedule.RecurrencePattern.Instance">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Instance.html#C1_Schedule_RecurrencePattern_Instance">Instance</a>
        </td>
        <td class="markdown level1 summary"><p>Get or sets the <a class="xref" href="C1.Schedule.WeekOfMonthEnum.html">WeekOfMonthEnum</a> value specifying
the count for which the recurrence pattern is valid for a given interval.
This property is only valid for recurrences of
the <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_MonthlyNth">MonthlyNth</a> and
<a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_YearlyNth">YearlyNth</a> types and allows the definition
of a recurrence pattern that is only valid for the Nth occurrence,
such as &quot;the 2nd Sunday in March&quot; pattern.
The default value is WeekOfMonthEnum.First.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Interval" data-uid="C1.Schedule.RecurrencePattern.Interval">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Interval.html#C1_Schedule_RecurrencePattern_Interval">Interval</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a> value specifying
the interval between occurrences of the recurrence.
The <a class="xref" href="C1.Schedule.RecurrencePattern.Interval.html#C1_Schedule_RecurrencePattern_Interval">Interval</a> property works in conjunction with
the <a class="xref" href="C1.Schedule.RecurrencePattern.RecurrenceType.html#C1_Schedule_RecurrencePattern_RecurrenceType">RecurrenceType</a> property to determine the cycle of the recurrence.
The maximum allowable value is 99 for weekly patterns and 999 for daily patterns.
The default value is 1.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_MonthOfYear" data-uid="C1.Schedule.RecurrencePattern.MonthOfYear">
          <a class="xref" href="C1.Schedule.RecurrencePattern.MonthOfYear.html#C1_Schedule_RecurrencePattern_MonthOfYear">MonthOfYear</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the value indicating which month of the year is valid
for the specified recurrence pattern. Can be a number from 1 to 12.
This property is only valid for recurrence patterns whose <a class="xref" href="C1.Schedule.RecurrencePattern.RecurrenceType.html#C1_Schedule_RecurrencePattern_RecurrenceType">RecurrenceType</a>
property is set to <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_YearlyNth">YearlyNth</a>
or <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html#C1_Schedule_RecurrenceTypeEnum_Yearly">Yearly</a>.
The default value is 1.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_NoEndDate" data-uid="C1.Schedule.RecurrencePattern.NoEndDate">
          <a class="xref" href="C1.Schedule.RecurrencePattern.NoEndDate.html#C1_Schedule_RecurrencePattern_NoEndDate">NoEndDate</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a> value indicating if
the recurrence pattern is endless.
The default value is True.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_Occurrences" data-uid="C1.Schedule.RecurrencePattern.Occurrences">
          <a class="xref" href="C1.Schedule.RecurrencePattern.Occurrences.html#C1_Schedule_RecurrencePattern_Occurrences">Occurrences</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the number of occurrences for the recurrence pattern.
This property allows the definition of a recurrence pattern that
is only valid for the specified number of subsequent occurrences.
For example, you can set this property to 10 for a formal training
course that will be held on the next ten Thursday evenings.
The default value is 0.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_ParentAppointment" data-uid="C1.Schedule.RecurrencePattern.ParentAppointment">
          <a class="xref" href="C1.Schedule.RecurrencePattern.ParentAppointment.html#C1_Schedule_RecurrencePattern_ParentAppointment">ParentAppointment</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the <a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> object which represents
the master appointment for this <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a> object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_PatternEndDate" data-uid="C1.Schedule.RecurrencePattern.PatternEndDate">
          <a class="xref" href="C1.Schedule.RecurrencePattern.PatternEndDate.html#C1_Schedule_RecurrencePattern_PatternEndDate">PatternEndDate</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetime">DateTime</a> value indicating
the end date of the recurrence pattern.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_PatternStartDate" data-uid="C1.Schedule.RecurrencePattern.PatternStartDate">
          <a class="xref" href="C1.Schedule.RecurrencePattern.PatternStartDate.html#C1_Schedule_RecurrencePattern_PatternStartDate">PatternStartDate</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetime">DateTime</a> value indicating
the start date of the recurrence pattern.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_RecurrenceType" data-uid="C1.Schedule.RecurrencePattern.RecurrenceType">
          <a class="xref" href="C1.Schedule.RecurrencePattern.RecurrenceType.html#C1_Schedule_RecurrencePattern_RecurrenceType">RecurrenceType</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="C1.Schedule.RecurrenceTypeEnum.html">RecurrenceTypeEnum</a> value
determining the type of recurrence (daily, monthly, etc.).
Default value is RecurrenceTypeEnum.Weekly.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_RemovedOccurrences" data-uid="C1.Schedule.RecurrencePattern.RemovedOccurrences">
          <a class="xref" href="C1.Schedule.RecurrencePattern.RemovedOccurrences.html#C1_Schedule_RecurrencePattern_RemovedOccurrences">RemovedOccurrences</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the <a class="xref" href="C1.Schedule.AppointmentList.html">AppointmentList</a> object which holds the list
of <a class="xref" href="C1.Schedule.Appointment.html">Appointment</a> objects removed from that series of appointments.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_StartTime" data-uid="C1.Schedule.RecurrencePattern.StartTime">
          <a class="xref" href="C1.Schedule.RecurrencePattern.StartTime.html#C1_Schedule_RecurrencePattern_StartTime">StartTime</a>
        </td>
        <td class="markdown level1 summary"><p>Gets or sets the <a class="xref" href="https://learn.microsoft.com/dotnet/api/system.datetime">DateTime</a> value indicating
the start time for the given occurrence of the recurrence pattern.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_GetDaysOfWeek" data-uid="C1.Schedule.RecurrencePattern.GetDaysOfWeek">
          <a class="xref" href="C1.Schedule.RecurrencePattern.GetDaysOfWeek.html#C1_Schedule_RecurrencePattern_GetDaysOfWeek">GetDaysOfWeek()</a>
        </td>
        <td class="markdown level1 summary"><p>Converts the <a class="xref" href="C1.Schedule.RecurrencePattern.DayOfWeekMask.html#C1_Schedule_RecurrencePattern_DayOfWeekMask">DayOfWeekMask</a> property into the list of DayOfWeek constants.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_GetDescription_C1_Schedule_CalendarInfo_" data-uid="C1.Schedule.RecurrencePattern.GetDescription(C1.Schedule.CalendarInfo)">
          <a class="xref" href="C1.Schedule.RecurrencePattern.GetDescription.html#C1_Schedule_RecurrencePattern_GetDescription_C1_Schedule_CalendarInfo_">GetDescription(CalendarInfo)</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the human-readable description of the <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a> object
according to the specified <a class="xref" href="C1.Schedule.CalendarInfo.html">CalendarInfo</a> object.
Use this method instead of <a class="xref" href="C1.Schedule.RecurrencePattern.Description.html#C1_Schedule_RecurrencePattern_Description">Description</a> property if the <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a>
object does not belong to any C1Schedule control.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_GetDescription_System_Globalization_CultureInfo_" data-uid="C1.Schedule.RecurrencePattern.GetDescription(System.Globalization.CultureInfo)">
          <a class="xref" href="C1.Schedule.RecurrencePattern.GetDescription.html#C1_Schedule_RecurrencePattern_GetDescription_System_Globalization_CultureInfo_">GetDescription(CultureInfo)</a>
        </td>
        <td class="markdown level1 summary"><p>Gets the human-readable description of the <a class="xref" href="C1.Schedule.RecurrencePattern.html">RecurrencePattern</a> object
according to the specified culture.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_OnPropertyChanged_System_String_" data-uid="C1.Schedule.RecurrencePattern.OnPropertyChanged(System.String)">
          <a class="xref" href="C1.Schedule.RecurrencePattern.OnPropertyChanged.html#C1_Schedule_RecurrencePattern_OnPropertyChanged_System_String_">OnPropertyChanged(string)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_SetDirty" data-uid="C1.Schedule.RecurrencePattern.SetDirty">
          <a class="xref" href="C1.Schedule.RecurrencePattern.SetDirty.html#C1_Schedule_RecurrencePattern_SetDirty">SetDirty()</a>
        </td>
        <td class="markdown level1 summary"><p>Specifies that the current recurrence pattern has been changed and should invalidate properties.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Schedule_RecurrencePattern_SetDirty_System_Boolean_" data-uid="C1.Schedule.RecurrencePattern.SetDirty(System.Boolean)">
          <a class="xref" href="C1.Schedule.RecurrencePattern.SetDirty.html#C1_Schedule_RecurrencePattern_SetDirty_System_Boolean_">SetDirty(bool)</a>
        </td>
        <td class="markdown level1 summary"><p>Specifies that the current recurrence pattern has been changed and should invalidate properties.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
