祝日定義ファイルを利用する |
ドロップダウンカレンダーで表示される祝日の設定は、リソースディクショナリ形式の定義ファイルとして利用することができます。定義ファイルは、他のプロジェクトやユーザーなどで再利用が可能です。
祝日定義ファイルは、休日が定義されているリソースディクショナリ形式の XAML ファイルです。日付コントロールのドロップダウンカレンダー、あるいはドロップダウンカレンダーコントロールで、この定義ファイルを参照することで、コーディングやプロパティの設定なしに、簡単に祝日を設定することができます。
InputMan for WPF には、サンプルとして国民の祝日があらかじめ登録された祝日定義ファイルが付属しています。サンプルの祝日定義ファイルは、InputMan for WPF の製品インストールフォルダ内の Data フォルダの「NationalHolidayDictionary.xaml」です。
祝日定義ファイルでは、休日設定グループに対して「MyHolidayGroup」というキー名をつけており、このキー名を使用してリソースから休日設定のリソースを参照できます。
なお、サンプルの祝日定義ファイルには、次の注意点があります。
祝日定義ファイルを利用する場合は、以下の手順に従います。
祝日定義ファイルをプロジェクトに含めます。
ページやユーザーコントロールの Resources プロパティで参照されるリソースディクショナリに祝日定義ファイルを追加します。
以下のサンプルコードは、UserControl のリソースディクショナリに対して祝日定義ファイルをマージします。
<UserControl.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="NationalHolidayDictionary.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </UserControl.Resources>
日付コントロールのドロップダウンカレンダーあるいはドロップダウンカレンダーコントロールの HolidaySetting プロパティに祝日定義ファイルのリソースを設定します。
以下のサンプルコードは、日付コントロールのドロップダウンカレンダーに対して祝日定義ファイルのリソースを適用します。
using GrapeCity.Windows.InputMan; var style = GcDateTime1.DropDownCalendarStyle; if (style == null) { style = new Style(typeof(GcDropDownCalendar)); GcDateTime1.DropDownCalendarStyle = style; } style.Setters.Add(new Setter(GcDropDownCalendar.HolidaySettingProperty, this.Resources["MyHolidayGroup"]));