バージョン

OnAfterActiveDayChanged メソッド

ActiveDay が変更されるときに、AfterActiveDayChanged イベントを発生させます。
シンタックス
'宣言
 
Protected Overridable Sub OnAfterActiveDayChanged( _
   ByVal e As AfterActiveDayChangedEventArgs _
) 
protected virtual void OnAfterActiveDayChanged( 
   AfterActiveDayChangedEventArgs e
)

パラメータ

e
イベントのデータを提供する AfterActiveDayChangedEventArgs
解説

イベントが発生すると、デリゲートを通じてイベント ハンドラーが呼び出されます。

OnAfterActiveDayChanged メソッドを使用すれば、デリゲートを関連付けなくても、派生クラスでイベントを処理できます。これは、派生クラスでイベントを処理する際によく用いられる手法です。

継承時の注意: 派生クラスで OnAfterActiveDayChanged をオーバーライドする場合は、登録されたデリゲートがイベントを受信できるようにするため、必ず基本クラスの OnAfterActiveDayChanged メソッドを呼び出してください。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinSchedule
Imports System.Diagnostics


    Private Sub ultraCalendarInfo1_AfterActiveDayChanged(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinSchedule.AfterActiveDayChangedEventArgs) Handles ultraCalendarInfo1.AfterActiveDayChanged

        '----------------------------------------------------------------------------------------------------
        '	説明
        '	AfterActiveDayChanged
        '
        '	コンポーネントの 'ActiveDay' が変更された後に発生します
        '	ActiveDay は、フォーカスを持つ日であると考えることができます
        '	一度に 1 つのみのアクティブ日があるわけです
        '
        '----------------------------------------------------------------------------------------------------

        Dim info As String = String.Empty

        '	新しい ActiveDay の日付を取得します
        info += "The date of the new ActiveDay is " + e.Day.Date.ToLongDateString() + vbCrLf

        '	新しい ActiveDay の曜日を取得します
        info += "The new ActiveDay falls on a " + e.Day.DayOfWeek.DayOfTheWeek.ToString() + vbCrLf

        '	ActiveDay の週番号を取得します
        info += "The new ActiveDay falls in week number " + e.Day.Week.WeekNumber.ToString() + " of the year.\n"

        '	月に日付の数を取得し、月の名前を取得します
        Dim monthName As String = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.MonthNames(e.Day.Month.MonthNumber - 1)
        info += "The new ActiveDay is day number " + e.Day.DayNumber.ToString()
        info += " in the month of " + monthName + vbCrLf

        '	月に ActiveDay の位置を取得します
        Dim daysInMonth As Integer = e.Day.Month.DaysInMonth
        Dim elapsed As Double = e.Day.DayNumber / daysInMonth
        elapsed *= 100
        info += "The new ActiveDay is approximately " + elapsed.ToString("n") + "% of the way into the month." + vbCrLf

        '	年数を取得します
        info += "The new ActiveDay is in the year " + e.Day.Month.Year.YearNumber.ToString() + vbCrLf

        '	年に ActiveDay の位置を取得します
        Dim daysInYear As Integer = 365
        If e.Day.Month.Year.IsLeapYear Then daysInYear = 366

        elapsed = e.Day.DayOfYear / daysInYear
        elapsed *= 100
        info += "The new ActiveDay is approximately " + elapsed.ToString("n") + "% of the way into the year." + vbCrLf

        '	アクティビティがある場合、各のタイプの数を表示します
        If e.Day.HasActivity Then
            Dim activity As String = String.Empty

            If (e.Day.Appointments.Count > 0) Then activity += e.Day.Appointments.Count.ToString() + " Appointment(s)" + vbCrLf
            If (e.Day.Holidays.Count > 0) Then activity += e.Day.Holidays.Count.ToString() + " Holiday(s)" + vbCrLf
            If (e.Day.Notes.Count > 0) Then activity += e.Day.Notes.Count.ToString() + " Note(s)" + vbCrLf

            info += "There is activity for the new ActiveDay :" + vbCrLf + vbCrLf
            info += activity + vbCrLf
        End If

        '	日が有効されたかどうかを表示します
        If (e.Day.Enabled) Then
            info += "The new ActiveDay is enabled." + vbCrLf
        Else
            info += "The new ActiveDay is disabled." + vbCrLf
        End If

        '	日が選択されたかどうかを表示します
        If (e.Day.Selected) Then
            info += "The new ActiveDay is selected." + vbCrLf

            '	情報を表示します
            MessageBox.Show(info, "ActiveDay information")
        End If

    End Sub
using System.Diagnostics;
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinSchedule;

		private void ultraCalendarInfo1_AfterActiveDayChanged(object sender, Infragistics.Win.UltraWinSchedule.AfterActiveDayChangedEventArgs e)
		{

			//----------------------------------------------------------------------------------------------------
			//	説明
			//	AfterActiveDayChanged
			//
			//	コンポーネントの 'ActiveDay' が変更された後に発生します
			//	ActiveDay は、フォーカスを持つ日であると考えることができます
			//	一度に 1 つのみのアクティブ日があるわけです
			//
			//----------------------------------------------------------------------------------------------------

			string info = string.Empty;

			//	新しい ActiveDay の日付を取得します
			info += "The date of the new ActiveDay is " + e.Day.Date.ToLongDateString() + ".\n";

			//	新しい ActiveDay の曜日を取得します
			info += "The new ActiveDay falls on a " + e.Day.DayOfWeek.DayOfTheWeek.ToString() + ".\n";

			//	ActiveDay の週番号を取得します
			info += "The new ActiveDay falls in week number " + e.Day.Week.WeekNumber.ToString() + " of the year.\n";

			//	月に日付の数を取得し、月の名前を取得します
			string monthName = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.MonthNames[ e.Day.Month.MonthNumber -1 ];
			info += "The new ActiveDay is day number " + e.Day.DayNumber.ToString();
			info += " in the month of " + monthName + ".\n";

			//	月に ActiveDay の位置を取得します
			int daysInMonth = e.Day.Month.DaysInMonth;
			double elapsed = (double)(e.Day.DayNumber) / (double)(daysInMonth);
			elapsed *= 100;
			info += "The new ActiveDay is approximately " + elapsed.ToString("n") + "% of the way into the month.\n";

			//	年数を取得します
			info += "The new ActiveDay is in the year " + e.Day.Month.Year.YearNumber.ToString() + ".\n";

			//	年に ActiveDay の位置を取得します
			int daysInYear = e.Day.Month.Year.IsLeapYear ? 366 : 365;
			elapsed = (double)(e.Day.DayOfYear) / (double)(daysInYear);
			elapsed *= 100;
			info += "The new ActiveDay is approximately " + elapsed.ToString("n") + "% of the way into the year.\n";

			//	アクティビティがある場合、各のタイプの数を表示します
			if ( e.Day.HasActivity )
			{
				string activity = string.Empty;

				if ( e.Day.Appointments.Count > 0 )
					activity += e.Day.Appointments.Count.ToString() + " Appointment(s)\n";
				if ( e.Day.Holidays.Count > 0 )
					activity += e.Day.Holidays.Count.ToString() + " Holiday(s)\n";
				if ( e.Day.Notes.Count > 0 )
					activity += e.Day.Notes.Count.ToString() + " Note(s)\n";

				info += "There is activity for the new ActiveDay :\n\n";
				info += activity + "\n";
			}

			//	日が有効されたかどうかを表示します
			if ( e.Day.Enabled )
				info += "The new ActiveDay is enabled.\n";
			else
				info += "The new ActiveDay is disabled.\n";

			//	日が選択されたかどうかを表示します
			if ( e.Day.Selected )
				info += "The new ActiveDay is selected.\n";

			//	情報を表示します
			MessageBox.Show( info, "ActiveDay information" );
		
		}
参照