祝日を休日にしたり、特定の日付を稼働/非稼働にしたり、一般的によくある企業独自のカレンダーに基づく設定をUltraGanttViewに対して行いたい場合は、

  1. CalendarDateSettingsインスタンスをターゲットの日付で作成し、
  2. そのIsWorkDayプロパティをtrue/falseで設定し、
  3. UltraCalendarInfo.DateSettingsコレクションに1で作成したCalendarDateSettingsオブジェクトを追加してください。

 

例えば、2022年のゴールデンウィーク期間中(4月29日(金)~5月8日(日))をすべて非稼働日とし、代わりに翌週の土曜日(5月14日)を振替出勤日とする場合は、以下のようなコードになります。

CalendarDateSettings dateSettings;

// 昭和の日
dateSettings = new CalendarDateSettings(new DateTime(2022, 4, 29));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// 憲法記念日
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 3));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// みどりの日
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 4));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// こどもの日
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 5));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// 独自の休日①
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 2));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// 独自の休日②
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 6));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.False;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

// 独自の休日①の振替出勤日
dateSettings = new CalendarDateSettings(new DateTime(2022, 5, 14));
dateSettings.IsWorkDay = Infragistics.Win.DefaultableBoolean.True;
ultraCalendarInfo1.DateSettings.Add(dateSettings);

 

実行結果

 

サンプル

 

APIリファレンス

 

Tagged:

製品について

Ultimate UI for Windows Forms