Scheduler for WPF
C1Calendar コントロールの使い方

C1Scheduler には、C1Calendar という補助的なカレンダーコントロールがあります。

C1Calendar コントロールは、1つの月または複数の月を表示するカレンダーユーザーインターフェイスの作成します。このコントロールを使用して、1つまたは複数の日付を対話式に選択できます。

カレンダーコントロールの目的は、特定の日付を対話式に選択する機能を持つカレンダーユーザーインターフェイスを(コードを使用せずに XAML だけで)作成するためのデータを提供することです。そのために次のプロパティがあります。

主なカレンダープロパティ

プロパティ 説明
CalendarBase.SelectedDate DateTime SelectedDate {get; set;} カレンダーで選択されている現在の日付を定義します。
CalendarBase.Year int Year {get; set;} C1.WPF.Schedule.CalendarBase.SelectedDate プロパティの年の部分を定義します。
CalendarBase.Month int Month {get; set;} カレンダーが表す1か月を定義します。
CalendarBase.MaxDate DateTime MaxDate {get; set;} 使用できる最大の日付を取得または設定します。デフォルト値は、12/31/9998 です。
CalendarBase.MinDate TimeSpan MinDate {get; set;} 使用できる最小の日付を取得または設定します。デフォルト値は、01/01/1753 です。

これらのプロパティは同期が維持されます。したがって、SelectedDate を変更すると Year と Month がそれに応じて変更され、Year や Month を変更すると SelectedDate が変更されます。

その他のカレンダープロパティ

プロパティ 説明
CalendarBase.CalendarHelper, public C1.WPF.Schedule.CalendarHelper CalendarHelper {get; set;} カレンダーに依存するプロパティを提供します。
C1Calendar.MaxSelectionCount, public int MaxSelectionCount {get; set;} コントロールで選択できる最大の日数を定義します。
C1Calendar.SelectedDates, public C1.WPF.Schedule.DateList SelectedDates {get; set;} 選択中の日付のリストです。
C1Calendar.BoldedDates, public C1.WPF.Schedule.DateList BoldedDates {get; set;} 太字の日付のリストです。
CalendarBase.DaysPanel, public System.Windows.Controls.ItemsPanelTemplate DaysPanel {get; set;} 1か月の日付を表す要素をレイアウトするパネルを定義する ItemsPanelTemplate です。デフォルトでは、7列6行の AutoDistributionGrid パネルが使用されます。
CalendarBase.DaySlotTemplate, public System.Windows.DataTemplate DaySlotTemplate {get; set;} 月内の1日の UI 表現を定義する DataTemplate です。このテンプレートの DataContext は、DaySlot オブジェクトです。
CalendarBase.DaySlotStyle, public System.Windows.Style DaySlotStyle {get; set;} 月内の1日を表すビジュアルツリーのルート要素である DaySlotPresenter 要素の Style です。
CalendarBase.DaysOfWeekPanel, public System.Windows.Controls.ItemsPanelTemplate DaysOfWeekPanel {get; set;} 曜日を表す要素をレイアウトするパネルを定義する ItemsPanelTemplate です。デフォルトでは、水平方向の StackPanel が使用されます。
CalendarBase.DayOfWeekSlotTemplate, public System.Windows.DataTemplate DayOfWeekSlotTemplate {get; set;} 1つの曜日の UI 表現を定義する DataTemplate です。このテンプレートの DataContext は、DayOfWeekSlot オブジェクトです。
C1CalendarItem.MonthFullName, public string MonthFullName { get; } 現在のカルチャを考慮して、カレンダーに表示されている現在の月の完全名を取得します。
CalendarBase.Theme, public System.Windows.ResourceDictionary Theme {get; set;} カレンダーテーマのリソースを含む ResourceDictionary オブジェクトを取得または設定します。

すべてのコントロールは次の RoutedEvent を公開します。

イベント 説明
CalendarBase.SelectedDateChanged C1.WPF.Schedule.CalendarBase.SelectedDate プロパティ値が変更されたときに発生します。