'宣言 Public Event DayOfWeekHeaderClicked As DayOfWeekHeaderClickedEventHandler
public event DayOfWeekHeaderClickedEventHandler DayOfWeekHeaderClicked
イベント ハンドラが、このイベントに関連するデータを含む、DayOfWeekHeaderClickedEventArgs 型の引数を受け取りました。次の DayOfWeekHeaderClickedEventArgs プロパティには、このイベントの固有の情報が記載されます。
プロパティ | 解説 |
---|---|
DayOfWeek | クリックされた日に対応するDayOfWeekオブジェクト。 |
UltraMonthViewSingle コントロールには DayOfWeek ヘッダーがクリックされたときに定義される特定のアクションがありません。DayOfWeekHeaderClicked イベントを使用して、DayOfWeek ヘッダーがクリックされた時にアプリケーション固有のアクションを実行することができます。
注: コントロールの WeekendDisplayStyle プロパティが Compressed に設定されると、DayOfWeekHeaderClicked イベントは日曜日に発生しません。
Private Sub UltraMonthViewSingle1_DayOfWeekHeaderClicked(ByVal sender As System.Object, ByVal e As Infragistics.Win.UltraWinSchedule.DayOfWeekHeaderClickedEventArgs) Handles ultraMonthViewSingle1.DayOfWeekHeaderClicked '---------------------------------------------------------------------------------------------------- ' 説明 ' DayOfWeekHeaderClicked ' ' コントロールの DayOfWeek ヘッダーがクリックされたときに発生します ' '---------------------------------------------------------------------------------------------------- ' Ctrl キーが押されていない場合、既存の選択をクリアします If (Control.ModifierKeys And Keys.Control) = 0 Then Me.ultraMonthViewSingle1.CalendarInfo.SelectedDateRanges.Clear() End If ' クリックしたヘッダーの曜日を取得します Dim dow As System.DayOfWeek = e.DayOfWeek.DayOfTheWeek ' コントロールの最初の表示日から開始し、特定の曜日が ' 最初に表示日される日付を取得します Dim tempDate As DateTime = Me.ultraMonthViewSingle1.FirstVisibleDay.Date If dow = Me.ultraMonthViewSingle1.FirstVisibleDay.Date.DayOfWeek Then Me.ultraMonthViewSingle1.FirstVisibleDay.Selected = True End If Dim i As Integer For i = 0 To 6 tempDate = tempDate.AddDays(1) If tempDate.DayOfWeek = dow Then Exit For Next i ' その日付に Day オブジェクトを作成し、選択します Dim day As Infragistics.Win.UltraWinSchedule.Day = Me.ultraMonthViewSingle1.CalendarInfo.GetDay(tempDate, True) If Not day Is Nothing Then day.Selected = True ' 表示する週が 1 週のみの場合は完了です If Me.ultraMonthViewSingle1.VisibleWeeks = 1 Then Return ' コントロールの VisibleWeeks プロパティを使用すると、 ' 上記で選択した日付に週を追加することにより、特定の曜日になる ' 日をそれぞれ選択します Dim weeks As Integer = Me.ultraMonthViewSingle1.VisibleWeeks - 1 For i = 0 To weeks - 1 tempDate = tempDate.AddDays(7) day = Me.ultraMonthViewSingle1.CalendarInfo.GetDay(tempDate, True) If Not day Is Nothing Then day.Selected = True Next End Sub
private void ultraMonthViewSingle1_DayOfWeekHeaderClicked(object sender, Infragistics.Win.UltraWinSchedule.DayOfWeekHeaderClickedEventArgs e) { //---------------------------------------------------------------------------------------------------- // 説明 // DayOfWeekHeaderClicked // // コントロールの DayOfWeek ヘッダーがクリックされたときに発生します // //---------------------------------------------------------------------------------------------------- // Ctrl キーが押されていない場合、既存の選択をクリアします if ( ( Control.ModifierKeys & Keys.Control ) == 0 ) this.ultraMonthViewSingle1.CalendarInfo.SelectedDateRanges.Clear(); // クリックしたヘッダーの曜日を取得します System.DayOfWeek dow = (System.DayOfWeek)(e.DayOfWeek.DayOfTheWeek); // コントロールの最初の表示日から開始し、特定の曜日の // 最初に表示される日付を取得します DateTime tempDate = this.ultraMonthViewSingle1.FirstVisibleDay.Date; if ( dow == this.ultraMonthViewSingle1.FirstVisibleDay.Date.DayOfWeek ) this.ultraMonthViewSingle1.FirstVisibleDay.Selected = true; for ( int i = 0; i < 7; i ++ ) { tempDate = tempDate.AddDays( 1.0F ); if ( tempDate.DayOfWeek == dow ) break; } // その日付に Day オブジェクトを作成し、選択します Infragistics.Win.UltraWinSchedule.Day day = this.ultraMonthViewSingle1.CalendarInfo.GetDay( tempDate, true ); if ( day != null ) day.Selected = true; // 表示する週が 1 週のみの場合は完了です if ( this.ultraMonthViewSingle1.VisibleWeeks == 1 ) return; // コントロールの VisibleWeeks プロパティを使用すると、 // 以上に選択した日付に週を追加して特定の曜日である // 各の日を選択します int weeks = this.ultraMonthViewSingle1.VisibleWeeks - 1; for ( int i = 0; i < weeks; i ++ ) { tempDate = tempDate.AddDays( 7.0F ); day = this.ultraMonthViewSingle1.CalendarInfo.GetDay( tempDate, true ); if ( day != null ) day.Selected = true; } }