バージョン

BeforeSelectedNotesChange イベント

SelectedNotes コレクションに変更が適用される前に発生します。
シンタックス
'宣言
 
Public Event BeforeSelectedNotesChange As BeforeSelectedNotesChangeEventHandler
public event BeforeSelectedNotesChangeEventHandler BeforeSelectedNotesChange
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、BeforeSelectedNotesEventArgs 型の引数を受け取りました。次の BeforeSelectedNotesEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
Cancel System.ComponentModel.CancelEventArgsから継承されます。 
NewSelectedNotes イベントがキャンセルされない場合選択される Notes を含む SelectedNotesCollection オブジェクトを返します。プロパティは読み取り専用です。
解説

SelectedNotes コレクションを変更しないように System.ComponentModel.CancelEventArgs.Cancel プロパティを使用して、BeforeSelectedNotesChange イベントはキャンセルできます。

BeforeSelectedNotesEventArgs.NewSelectedNotes プロパティは新しい選択された Note オブジェクトのコレクションを返します。

このイベントの実行中に SelectedNotes コレクションを変更することはできません。ただし、BeforeSelectedNotesEventArgs.NewSelectedNotes プロパティから返されるコレクションを変更できます。

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

    Private Sub ultraCalendarInfo1_BeforeSelectedNotesChange(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinSchedule.BeforeSelectedNotesEventArgs) Handles ultraCalendarInfo1.BeforeSelectedNotesChange

        '----------------------------------------------------------------------------------------------------
        '	説明
        '	BeforeSelectedNotesChange
        '
        '	1 つ以上の Note が選択または選択解除された後に発生します
        '
        '----------------------------------------------------------------------------------------------------

        '	NewSelectedNotes コレクションのカウントは既存の
        '	SelectedNotes コレクションのカウントより大きいの場合、
        '	新しいメモが選択されました
        Dim info As String = String.Empty
        If (e.NewSelectedNotes.Count > Me.ultraCalendarInfo1.SelectedNotes.Count) Then
            info += "The following Notes have been added to the selection:" + vbCrLf + vbCrLf

            If (Me.ultraCalendarInfo1.SelectedNotes.Count > 0) Then
                '	NewSelectedNotes コレクションを繰り返し、
                '	各の新しい選択についての情報を取得します
                Dim newNote As Note
                For Each newNote In e.NewSelectedNotes

                    '	既存の選択されるメモを繰り返し、コレクションに追加した新しいメモを
                    '	決定します
                    Dim oldNote As Note
                    For Each oldNote In Me.ultraCalendarInfo1.SelectedNotes
                        If (newNote Is oldNote) Then
                            Exit For
                        Else

                            '	既存のメモは SelectedNotes コレクションに存在する場合、
                            '	ユーザーによって新しくないため、新しいとして表示しません
                            info += newNote.Description + " ("
                            info += newNote.Date.ToLongDateString() + ")" + vbCrLf
                        End If

                    Next
                Next

            Else
                '	SelectedNotes コレクションのカウントが 0 の場合、
                '	既に存在することを確認する必要がないため、すべてを表示します
                Dim newNote As Note
                For Each newNote In e.NewSelectedNotes
                    '	既存のメモが SelectedNotes コレクションに存在する場合、
                    '	NewSelectedNotes コレクションにない場合、選択解除されました
                    info += newNote.Description + " ("
                    info += newNote.Date.ToLongDateString() + ")" + vbCrLf
                Next
            End If
        ElseIf (e.NewSelectedNotes.Count > 0) Then

            '	そうでない場合、既存のメモの選択は解除されます
            info += "The following Notes have been removed from the selection:" + vbCrLf + vbCrLf

            '	既存の SelectedNotes コレクションを繰り返し、
            '	各解除されている選択についての情報を取得します
            Dim oldNote As Note
            For Each oldNote In Me.ultraCalendarInfo1.SelectedNotes
                '	既存の選択されているメモを繰り返し、コレクションに追加した新しいメモを
                '	決定します
                Dim newNote As Note
                For Each newNote In e.NewSelectedNotes
                    If (newNote Is oldNote) Then
                        Exit For
                    Else

                        '	既存のメモが SelectedNotes コレクションに存在し、
                        '	NewSelectedNotes コレクションには存在しない場合、選択は解除されます
                        info += oldNote.Description + " ("
                        info += oldNote.Date.ToLongDateString() + ")" + vbCrLf
                    End If
                Next

            Next
        Else
            '	選択がクリアされました
            info += "The SelectedNotes collection is about to be cleared." + vbCrLf



            info += vbCrLf + vbCrLf + "Continue?"

            '	エンド ユーザーに MessageBox を表示し、続行するかどうかを確認します
            Dim result As DialogResult = MessageBox.Show(info, "BeforeSelectedNotesChange", MessageBoxButtons.YesNo)

            '	続行しない場合、イベントをキャンセルします
            If (result = DialogResult.No) Then e.Cancel = True
        End If

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

		private void ultraCalendarInfo1_BeforeSelectedNotesChange(object sender, Infragistics.Win.UltraWinSchedule.BeforeSelectedNotesEventArgs e)
		{
		
			//----------------------------------------------------------------------------------------------------
			//	説明
			//	BeforeSelectedNotesChange
			//
			//	1 つ以上の Note が選択または選択解除された後に発生します
			//
			//----------------------------------------------------------------------------------------------------

			//	NewSelectedNotes コレクションのカウントが既存の
			//	SelectedNotes コレクションのカウントより大きい場合、
			//	新しいメモが選択されます
			string info = string.Empty;
			if ( e.NewSelectedNotes.Count > this.ultraCalendarInfo1.SelectedNotes.Count )
			{
				info += "The following Notes have been added to the selection:" + "\n\n";

				if ( this.ultraCalendarInfo1.SelectedNotes.Count > 0 )
				{
					//	NewSelectedNotes コレクションを繰り返し、
					//	各新しい選択についての情報を取得します
					foreach( Note newNote in e.NewSelectedNotes )
					{
						//	既存の選択されたメモを繰り返し、コレクションに追加した新しいメモを
						//	決定します
						foreach( Note oldNote in this.ultraCalendarInfo1.SelectedNotes )
						{
							if ( newNote == oldNote )
								continue;
							else
							{
								//	既存のメモが SelectedNotes コレクションに存在する場合、
								//	ユーザーによって新しくないため、新しいとして表示しません
								info += newNote.Description + " (";
								info += newNote.Date.ToLongDateString() + ")" + "\n";
							}
						}
						
					}
				}
				else
				{
					//	SelectedNotes コレクションのカウントは 0 の場合、
					//	既に存在することを確認する必要がないため、すべてを表示します
					foreach( Note newNote in e.NewSelectedNotes )
					{
						info += newNote.Description + " (";
						info += newNote.Date.ToLongDateString() + ")" + "\n";
					}
				}
			}
			else
			if ( e.NewSelectedNotes.Count > 0 )
			{
				//	そうでない場合、既存のメモの選択は解除されます
				info += "The following Notes have been removed from the selection:" + "\n\n";

				//	既存の SelectedNotes コレクションを繰り返し、
				//	各解除されている選択についての情報を取得します
				foreach( Note oldNote in this.ultraCalendarInfo1.SelectedNotes )
				{
					//	既存の選択されたメモを繰り返し、コレクションに追加した新しいメモを
					//	決定します
					foreach( Note newNote in e.NewSelectedNotes )
					{
						if ( newNote == oldNote )
							continue;
						else
						{
							//	既存のメモが SelectedNotes コレクションに依存する場合、
							//	NewSelectedNotes コレクションにない場合、選択解除されました
							info += newNote.Description + " (";
							info += newNote.Date.ToLongDateString() + ")" + "\n";
						}

					}
					
				}
			}
			else
			{
				//	選択がクリアされました
				info += "The SelectedNotes collection is about to be cleared." + "\n";

			}

			info += "\n\n" + "Continue?";

			//	エンド ユーザーに MessageBox を表示し、続行するかどうかを確認します
			DialogResult result = MessageBox.Show( info, "BeforeSelectedNotesChange", MessageBoxButtons.YesNo );

			//	続行しない場合、イベントをキャンセルします
			if ( result == DialogResult.No )
				e.Cancel = true;
			
		}
参照