UltraMonthViewMultiBase派生クラスは、統合された形式で複数の月を表示するように設計されます。このようにして、クラスには Infragistics.Win.UltraWinSchedule.MonthViewMulti.DayUIElement 内の関連付けられた UltraCalendarInfo からのアクティビティ (Appointment、Holiday、およびNote情報を表示するために使用できるスペースがありません。TipStyle を使用して、マウスを日の上に移動したときに、この情報のいくつかを自動的に表示できます。BeforeDisplayDayToolTipでツールチップをオーバーライドできるため、カスタムのツールチップを表示するために使用することも可能です。
Imports Infragistics.Win Imports Infragistics.Win.UltraWinSchedule Imports Infragistics.Win.UltraWinSchedule.MonthViewMulti Private Sub SetupTipStyle() ' Get a count on each activity type for the currently visible month(s) Dim appointments As Integer = 0, holidays As Integer = 0, notes As Integer = 0 Dim month As Infragistics.Win.UltraWinSchedule.MonthViewMulti.VisibleMonth For Each month In Me.ultraMonthViewMulti1.VisibleMonths appointments += month.Month.Appointments.Count holidays += month.Month.Holidays.Count notes += month.Month.Notes.Count Next ' Set the TipStyle property so that only the most prevalent type ' of activity for the currently visible months is displayed in the tooltip If (appointments > holidays And appointments > notes) Then Me.ultraMonthViewMulti1.TipStyle = TipStyleDay.Appointments ElseIf (holidays > appointments And holidays > notes) Then Me.ultraMonthViewMulti1.TipStyle = TipStyleDay.Holidays ElseIf (notes > appointments And notes > holidays) Then Me.ultraMonthViewMulti1.TipStyle = TipStyleDay.Notes Else ' If no one type of activity was any more prevalent than ' the other types, set the TipStyle to None Me.ultraMonthViewMulti1.TipStyle = TipStyleDay.None End If End Sub
using Infragistics.Win; using Infragistics.Win.UltraWinSchedule; using Infragistics.Win.UltraWinSchedule.MonthViewMulti; private void SetupTipStyle() { // Get a count on each activity type for the currently visible month(s) int appointments = 0, holidays = 0, notes = 0; foreach ( Infragistics.Win.UltraWinSchedule.MonthViewMulti.VisibleMonth month in this.ultraMonthViewMulti1.VisibleMonths ) { appointments += month.Month.Appointments.Count; holidays += month.Month.Holidays.Count; notes += month.Month.Notes.Count; } // Set the TipStyle property so that only the most prevalent type // of activity for the currently visible months is displayed in the tooltip if ( appointments > holidays && appointments > notes ) this.ultraMonthViewMulti1.TipStyle = TipStyleDay.Appointments; else if ( holidays > appointments && holidays > notes ) this.ultraMonthViewMulti1.TipStyle = TipStyleDay.Holidays; else if ( notes > appointments && notes > holidays ) this.ultraMonthViewMulti1.TipStyle = TipStyleDay.Notes; else // If no one type of activity was any more prevalent than // the other types, set the TipStyle to None this.ultraMonthViewMulti1.TipStyle = TipStyleDay.None; }