14. 表示種類(月、年、10年)が変更されたことを知る
カレンダーの表示種類(月、年、10年)が変更されたことを知るにはDisplayModeChangedイベントを使用します。
例えば「月から年に変更された」「年から10年に変更された」など、表示種類(DisplayModeプロパティの値)が変更された場合にイベントが発生します。
下記は、表示種類が変更された場合にメッセージを表示する例です。
Private Sub Calendar1_DisplayModeChanged(ByVal sender As System.Object, ByVal e As System.Windows.Controls.CalendarModeChangedEventArgs) Handles Calendar1.DisplayModeChanged MessageBox.Show("DisplayMode が" & Calendar1.DisplayMode.ToString() & " に変更されました") End Sub
private void Calendar1_DisplayModeChanged(object sender, CalendarModeChangedEventArgs e) { MessageBox.Show("DisplayMode が" + Calendar1.DisplayMode.ToString() + " に変更されました"); }
表示種類(月、年、10年)が変更されたことを知るにはDisplayModeChangedイベントを使用します。
15. 選択されている日付が変更されたことを知る
選択されている日付が変更されたことを知るには SelectedDatesChangedイベントを使用します。
例えば「2010/9/25から2010/9/26に変更された」「2010/9/25から2011/9/25に変更された」など、選択されている日付が変更された場合にイベントが発生します。
下記は、選択されている日付が変更された場合にメッセージを表示する例です。
Private Sub Calendar1_SelectedDatesChanged(ByVal sender As System.Object, ByVal e As System.Windows.Controls.SelectionChangedEventArgs) Handles Calendar1.SelectedDatesChanged MessageBox.Show("選択されている日付が変更されました") End Sub
private void Calendar1_SelectedDatesChanged(object sender, SelectionChangedEventArgs e) { MessageBox.Show("選択されている日付が変更されました"); }
選択されている日付が変更されたことを知るにはSelectedDatesChangedイベントを使用します。
まとめ
Calendarコントロールは、単に日付を表示するだけではなく、選択不可能な日付を設定したり、背景に画像を設定したりとさまざまな機能があることがお分かりいただけたかと思います。
今回紹介したTips以外にも多くの機能を持っていますので、興味がある方はぜひMSDNライブラリを参照して研究してみてください。