XamMonthCalenarのタイトル部分をクリックしたりするとカレンダーの表示単位が
日←→月←→年←→…
と切り替わります。
この切り替わりを制限するには、XamMonthCalenarのExecutingCommandイベントでCommand名がZoomOutCalendarModeの場合にイベントをキャンセルしてください。
例えば、月単位の表示切替までに制限したい場合は、以下のようなコードになります。
private void xamMonthCalendar1_ExecutingCommand(object sender, Infragistics.Windows.Controls.Events.ExecutingCommandEventArgs e) { XamMonthCalendar calendar = (XamMonthCalendar)sender; // Command名がZoomOutCalendarMode、かつ、現在の表示単位が月単位の場合 if (e.Command.Name == "ZoomOutCalendarMode" && calendar.CurrentCalendarMode == Infragistics.Windows.Editors.CalendarMode.Months) { // イベントをキャンセルする。 e.Cancel = true; } }
サンプル
APIリファレンス
- ExecutingCommand イベント (XamMonthCalendar)
- ZoomOutCalendarMode フィールド
- https://jp.infragistics.com/help/wpf/infragisticswpf.editors~infragistics.windows.editors.monthcalendarcommands~zoomoutcalendarmode
- CurrentCalendarMode プロパティ (XamMonthCalendar)
- CalendarMode 列挙体