バージョン

XamMonthCalendar クラス

1 カ月以上の月を表示するために使用されるカスタム コントロール。
シンタックス
解説

XamMonthCalendar には、Microsoft Vista Common Controls MonthCalendar クラスと同様の機能を提供します。

コントロールはナビゲーション スタイルの機能を提供します。迅速に日付をナビゲートするにはズーム アウト、選択を変更するにはズーム インできます。CurrentCalendarMode は現在のモードを制御するために使用されます。エンド ユーザーがナビゲートできる日付の最下位を制御するために MinCalendarMode を使用できます。

XamMonthCalendar のデフォルト テンプレートは、CalendarDimensions で設定される行/列カウントに基づいて CalendarItemGroup インスタンスを生成する CalendarItemGroupPanel を使用されます。それに、AutoAdjustCalendarDimensions プロパティがデフォルト値の True に設定する場合、パネルは自動的にその CalendarItemGroupPanel.MaxGroups までの追加のグループを生成します。ReferenceDate はグループで表示する日付を決定するために使用されます。

コントロールは複数選択モードをサポートして、その で制御されます。Extended または Range などの複数選択モードを使用するときに、SelectedDates プロパティは選択をアクセスまたは MaxSelectedDates までに変更するために使用できます。コントロールも SelectedDate プロパティを公開されます。単一選択モードで使用されます。複数選択モードでは、このプロパティは最初の選択された日付を返します。

コントロールは選択できる日付を制限するために使用できるさまざまなプロパティを公開します。MinDate および MaxDate は、ユーザーがナビゲートできる範囲を制御するために使用されます。DisabledDaysOfWeek および DisabledDates を使用してその範囲の日付を無効にすることができます。

使用例
Imports Infragistics.Windows.Editors
Imports Infragistics.Windows.Controls

    Private Sub InitializeCalendar(ByVal calendar As XamMonthCalendar)
        ' by default the template of the xammonthcalendar uses a calendaritemgrouppanel
        ' which will automatically create groups as needed based on the available size
        ' to use a fixed size, you can set AutoAdjustCalendarDimensions to false and 
        ' set the CalendarDimensions to the dimensions you want it to always use
        calendar.AutoAdjustCalendarDimensions = False
        calendar.CalendarDimensions = New CalendarDimensions(2, 2)

        ' DisabledDaysOfWeek is a flagged enumeration of the days of the week
        ' that should be disabled and therefore disallow activation and selection
        calendar.DisabledDaysOfWeek = DayOfWeekFlags.Saturday Or DayOfWeekFlags.Sunday

        ' the default selection type allows for selection of multiple dates
        calendar.SelectionType = SelectionType.Single

        ' the min/max dates control the range of dates that are available
        ' for activation/selection. any dates outside this range will not
        ' be shown
        calendar.MinDate = New DateTime(2008, 1, 1)
        calendar.MaxDate = New DateTime(2099, 12, 31)

        ' by default week numbers are not displayed
        calendar.WeekNumberVisibility = Visibility.Visible

        ' the today button that is used to select the current date
        ' can be removed using the TodayButtonVisibility
        calendar.TodayButtonVisibility = Visibility.Collapsed

        ' by default leading and trailing dates (e.g. days before
        ' and after the first/last visible month) are displayed
        ' within the control
        calendar.ShowLeadingAndTrailingDates = False
    End Sub
using Infragistics.Windows.Editors;
using Infragistics.Windows.Controls;

        private void InitializeCalendar(XamMonthCalendar calendar)
        {
            // by default the template of the xammonthcalendar uses a calendaritemgrouppanel
            // which will automatically create groups as needed based on the available size
            // to use a fixed size, you can set AutoAdjustCalendarDimensions to false and 
            // set the CalendarDimensions to the dimensions you want it to always use
            calendar.AutoAdjustCalendarDimensions = false;
            calendar.CalendarDimensions = new CalendarDimensions(2, 2);

            // DisabledDaysOfWeek is a flagged enumeration of the days of the week
            // that should be disabled and therefore disallow activation and selection
            calendar.DisabledDaysOfWeek = DayOfWeekFlags.Saturday | DayOfWeekFlags.Sunday;

            // the default selection type allows for selection of multiple dates
            calendar.SelectionType = SelectionType.Single;

            // the min/max dates control the range of dates that are available
            // for activation/selection. any dates outside this range will not
            // be shown
            calendar.MinDate = new DateTime(2008, 1, 1);
            calendar.MaxDate = new DateTime(2099, 12, 31);

            // by default week numbers are not displayed
            calendar.WeekNumberVisibility = Visibility.Visible;

            // the today button that is used to select the current date
            // can be removed using the TodayButtonVisibility
            calendar.TodayButtonVisibility = Visibility.Collapsed;

            // by default leading and trailing dates (e.g. days before
            // and after the first/last visible month) are displayed
            // within the control
            calendar.ShowLeadingAndTrailingDates = false;
        }
<UserControl x:Class="Xaml.UserControl1"
    
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    
xmlns:igEditors="http://infragistics.com/Editors"
    
xmlns:igThemes="http://infragistics.com/Themes">
    
<igEditors:XamMonthCalendar
        
x:Name="xamMonthCalendar1"
        
AutoAdjustCalendarDimensions="False"
        
CalendarDimensions="2,2"
        
DisabledDaysOfWeek="Saturday, Sunday"
        
SelectionType="Single"
        
MinDate="1/1/2000"
        
MaxDate="12/31/2099"
        
WeekNumberVisibility="Visible"
        
TodayButtonVisibility="Collapsed"
        
ShowLeadingAndTrailingDates="False" />
</UserControl>
参照