7. 任意の日付を選択する
コードから日付を選択するにはSelectedDateプロパティやSelectedDatesプロパティを使用します。
最初に、SelectedDateプロパティを使用して単一の日付を選択状態にする例(この例では2010/10/12)を下記に示します。

<Calendar Height="170" SelectionMode="SingleDate" SelectedDate="10/12/2010" />
Private Sub Window_Loaded(ByVal sender As System.Object,
ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
'1つの日付を選択する例
Calendar1.SelectionMode = CalendarSelectionMode.SingleDate
Calendar1.SelectedDate = New DateTime(2010, 10, 12)
End Sub
private void Window_Loaded(object sender, RoutedEventArgs e)
{
// 1つの日付を選択する例
calendar1.SelectionMode = CalendarSelectionMode.SingleDate;
calendar1.SelectedDate = new DateTime(2010, 10, 12);
}
次にSelectedDatesプロパティを使用して複数の日付を選択状態にする例を下記に示します。

XAMLでSelectedDatesを使用する場合は<sys:DateTime>要素を使用します(Silverlightでは使用できません)。
また、<sys:DateTime>要素を使用するにはxmlns:sys="clr-namespace:System;assembly=mscorlib"属性が必要です。
コードから追加する場合はSelctedDatesプロパティのAddメソッドまたはAddRangeメソッドを使用します。
<Calendar Height="170" HorizontalAlignment="Left" Margin="12,12,0,0" Name="Calendar1" DisplayDate="10/1/2010"
VerticalAlignment="Top" Width="180" SelectionMode="MultipleRange"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<Calendar.SelectedDates>
<sys:DateTime>10/10/2010</sys:DateTime>
<sys:DateTime>10/12/2010</sys:DateTime>
<sys:DateTime>10/14/2010</sys:DateTime>
<sys:DateTime>10/16/2010</sys:DateTime>
<sys:DateTime>10/18/2010</sys:DateTime>
<sys:DateTime>10/20/2010</sys:DateTime>
<sys:DateTime>10/22/2010</sys:DateTime>
</Calendar.SelectedDates>
</Calendar>
Private Sub Window_Loaded(ByVal sender As System.Object,
ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
'複数の日付を選択する例
Calendar1.SelectionMode = CalendarSelectionMode.MultipleRange
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 10))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 12))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 14))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 16))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 18))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 20))
Calendar1.SelectedDates.Add(New DateTime(2010, 10, 22))
End Sub
private void Window_Loaded(object sender, RoutedEventArgs e)
{
// 複数の日付を選択する例
calendar1.SelectionMode = CalendarSelectionMode.MultipleRange;
calendar1.SelectedDates.Add(new DateTime(2010, 10, 10));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 12));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 14));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 16));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 18));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 20));
calendar1.SelectedDates.Add(new DateTime(2010, 10, 22));
}
コードから日付を選択状態にするにはSelectedDateプロパティかSelectedDatesプロパティを使用する。
