'宣言 Public Event CalendarInfoChanged As CalendarInfoChangedEventHandler
public event CalendarInfoChangedEventHandler CalendarInfoChanged
イベント ハンドラが、このイベントに関連するデータを含む、CalendarInfoChangedEventArgs 型の引数を受け取りました。次の CalendarInfoChangedEventArgs プロパティには、このイベントの固有の情報が記載されます。
プロパティ | 解説 |
---|---|
PropChangeInfo | 変更されたプロパティに関する情報を表すPropChangeInfoオブジェクト。このプロパティは読み取り専用です。 |
コンポーネントのプロパティ、またはサブオブジェクトのいずれかが変更するときには必ず CalendarInfoChanged イベントが発生します。CalendarInfoChangedEventArgs.PropChangeInfo プロパティは、プロパティ変更通知のチェーン全体を含む Infragistics.Shared.PropChangeInfo オブジェクトを返します。
EventManager を使用して、イベントを抑制できません。
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinSchedule Imports System.Diagnostics Private Sub ultraCalendarInfo1_CalendarInfoChanged(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinSchedule.CalendarInfoChangedEventArgs) Handles ultraCalendarInfo1.CalendarInfoChanged '---------------------------------------------------------------------------------------------------- ' 説明 ' CalendarInfoChanged ' ' UltraCalendarInfo オブジェクトのプロパティが変更されたときに CalendarInfoChanged イベントを発生します ' UltraCalendarInfo オブジェクトに複数オブジェクト プロパティ (ActiveDay、Appointments など) があるため、 ' CalendarInfoChangedEventArgs の PropChangeInfo オブジェクト プロパティは Trigger プロパティによって保存される ' 入れ子になった PropChangeInfo オブジェクトを含むことが可能です親チェーンを再帰的に上へ移動し、 ' プロパティ変更の通知を発生したイベントの詳細リストを作成できます ' '---------------------------------------------------------------------------------------------------- Debug.WriteLine("**********CalendarInfoChanged event fired (begin)**********") Dim pci As PropChangeInfo = e.PropChangeInfo ' PropID を出力します Debug.WriteLine("PropID = " + pci.PropId.ToString()) ' Source を出力します If (pci.Source Is Nothing) Then Debug.WriteLine("Source Is Nothing") Else Debug.WriteLine("Source = " + pci.Source.ToString()) ' Trigger を出力します If (pci.Trigger Is Nothing) Then Debug.WriteLine("Trigger Is Nothing") Else Debug.WriteLine("Trigger = " + pci.Trigger.ToString()) ' null 値を持つ Trigger を見つけるまで親通知ェーンを移動します ' 変更についての情報が読みやすい様にインデントして ' デバッガーへ出力します Dim tabChars As String = Chr(9) While Not pci.Trigger Is Nothing ' 現在の Trigger の Trigger を取得して再帰します pci = pci.Trigger If pci.Trigger Is Nothing Then Exit While ' PropID を出力します Debug.WriteLine(tabChars + "PropID = " + pci.PropId.ToString()) ' Source を出力します If (pci.Source Is Nothing) Then Debug.WriteLine(tabChars + "Source Is Nothing") Else Debug.WriteLine(tabChars + "Source = " + pci.Source.ToString()) ' Trigger を出力します If (pci.Trigger Is Nothing) Then Debug.WriteLine(tabChars + "Trigger Is Nothing") Else Debug.WriteLine(tabChars + "Trigger = " + pci.Trigger.ToString()) ' 次の再帰のためにインデントを増加します tabChars += tabChars End If End If End While End If End If Debug.WriteLine("**********CalendarInfoChanged event fired (end)**********") Debug.WriteLine("") End Sub
using System.Diagnostics; using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinSchedule; private void ultraCalendarInfo1_CalendarInfoChanged(object sender, Infragistics.Win.UltraWinSchedule.CalendarInfoChangedEventArgs e) { //---------------------------------------------------------------------------------------------------- // 説明 // CalendarInfoChanged // // UltraCalendarInfo オブジェクトのプロパティが変更されたときに CalendarInfoChanged イベントを発生します // UltraCalendarInfo オブジェクトに複数オブジェクト プロパティ (ActiveDay、Appointments など) があるため、 // CalendarInfoChangedEventArgs の PropChangeInfo オブジェクト プロパティは Trigger プロパティによって保存される // 入れ子になった PropChangeInfo オブジェクトを含むことが可能です親チェーンを再帰的に上へ移動し、 // プロパティ変更の通知を発生したイベントの詳細リストを作成できます // //---------------------------------------------------------------------------------------------------- Debug.WriteLine( "**********CalendarInfoChanged event fired (begin)**********" ); PropChangeInfo pci = e.PropChangeInfo; // PropID を出力します Debug.WriteLine( "PropID = " + pci.PropId.ToString() ); // Source を出力します if ( pci.Source == null ) Debug.WriteLine( "Source = null" ); else Debug.WriteLine( "Source = " + pci.Source.ToString() ); // Trigger を出力します if ( pci.Trigger == null ) Debug.WriteLine( "Trigger = null" ); else Debug.WriteLine( "Trigger = " + pci.Trigger.ToString() ); // null 値を持つ Trigger を見つけるまで親の通知チェーンを移動します // 各再帰の変更についての情報が読みやすい様にインデントして // デバッガーに出力します string tabChars = ((char)(9)).ToString(); while( pci.Trigger != null ) { // 現在の Trigger の Trigger を取得して再帰します pci = pci.Trigger; if ( pci.Trigger == null ) break; // PropID を出力します Debug.WriteLine( tabChars + "PropID = " + pci.PropId.ToString() ); // Source を出力します if ( pci.Source == null ) Debug.WriteLine( tabChars + "Source = null" ); else Debug.WriteLine( tabChars + "Source = " + pci.Source.ToString() ); // Trigger を出力します if ( pci.Trigger == null ) Debug.WriteLine( tabChars + "Trigger = null" ); else Debug.WriteLine( tabChars + "Trigger = " + pci.Trigger.ToString() ); // 次の再帰のためにインデントを増加します tabChars += tabChars; } Debug.WriteLine( "**********CalendarInfoChanged event fired (end)**********" ); Debug.WriteLine(""); }