'Declaration Public Property ActiveDate As Nullable(Of Date)
public Nullable<DateTime> ActiveDate {get; set;}
The ActiveDate is used to determine which CalendarItem within the control has the input focus when the keyboard focus is within the XamMonthCalendar. Keyboard navigation within the control is then based on that item's dates.
Imports Infragistics.Windows.Editors Imports Infragistics.Windows.Editors.Events Imports Infragistics.Windows.Controls Private Sub InitializeCalendar(ByVal calendar As XamMonthCalendar) ' the selectiontype determines how dates may be selected ' Range is a special type of multiple selection that ignores ' the control key state and therefore doesn't allow ' discontigous sections via the ui calendar.SelectionType = SelectionType.Range ' use MaxSelectedDates to restrict the number of dates ' that can be selected calendar.MaxSelectedDates = 7 ' you can add individual dates to the SelectedDates but ' when selecting a range, the AddRange method is more ' convenient ' 'calendar.SelectedDates.Add(new DateTime(2008, 10, 14)) 'calendar.SelectedDates.Add(new DateTime(2008, 10, 15)) 'calendar.SelectedDates.Add(new DateTime(2008, 10, 16)) calendar.SelectedDates.AddRange(New DateTime(2008, 10, 14), New DateTime(2008, 10, 16), True) ' make the last day in the selection active calendar.ActiveDate = New DateTime(2008, 10, 16) AddHandler calendar.SelectedDatesChanged, AddressOf xamMonthCalendar1_SelectedDatesChanged End Sub Private Sub xamMonthCalendar1_SelectedDatesChanged(ByVal sender As Object, ByVal e As SelectedDatesChangedEventArgs) Dim sb As New Text.StringBuilder() sb.Append("Added:") For i As Integer = 0 To e.AddedDates.Count - 1 If (i > 0) Then sb.Append(", ") sb.Append(e.AddedDates(i).ToString("d")) Next i sb.AppendLine() sb.Append("Removed:") For i As Integer = 0 To e.RemovedDates.Count - 1 If (i > 0) Then sb.Append(", ") sb.Append(e.RemovedDates(i).ToString("d")) Next i sb.AppendLine() System.Diagnostics.Debug.WriteLine(sb.ToString(), "SelectedDatesChanged") End Sub
using Infragistics.Windows.Editors; using Infragistics.Windows.Editors.Events; using Infragistics.Windows.Controls; private void InitializeCalendar(XamMonthCalendar calendar) { // the selectiontype determines how dates may be selected // Range is a special type of multiple selection that ignores // the control key state and therefore doesn't allow // discontigous sections via the ui calendar.SelectionType = SelectionType.Range; // use MaxSelectedDates to restrict the number of dates // that can be selected calendar.MaxSelectedDates = 7; // you can add individual dates to the SelectedDates but // when selecting a range, the AddRange method is more // convenient // //calendar.SelectedDates.Add(new DateTime(2008, 10, 14)); //calendar.SelectedDates.Add(new DateTime(2008, 10, 15)); //calendar.SelectedDates.Add(new DateTime(2008, 10, 16)); calendar.SelectedDates.AddRange(new DateTime(2008, 10, 14), new DateTime(2008, 10, 16), true); // make the last day in the selection active calendar.ActiveDate = new DateTime(2008, 10, 16); calendar.SelectedDatesChanged += xamMonthCalendar1_SelectedDatesChanged; } void xamMonthCalendar1_SelectedDatesChanged(object sender, SelectedDatesChangedEventArgs e) { StringBuilder sb = new StringBuilder(); sb.Append("Added:"); for(int i = 0; i < e.AddedDates.Count; i++) { if (i > 0) sb.Append(", "); sb.Append(e.AddedDates[i].ToString("d")); } sb.AppendLine(); sb.Append("Removed:"); for (int i = 0; i < e.RemovedDates.Count; i++) { if (i > 0) sb.Append(", "); sb.Append(e.RemovedDates[i].ToString("d")); } sb.AppendLine(); System.Diagnostics.Debug.WriteLine(sb.ToString(), "SelectedDatesChanged"); }
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2