PowerTools CalendarGrid for Windows Forms 1.0J
ResizeCompleting イベント
使用例 

リサイズ動作が完了する前に発生します。
構文
イベント データ

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

プロパティ解説
Directionリサイズ方向を取得します。  
Handledユーザーがリサイズ処理を取り扱うかどうかを示す値を取得または設定します。  
LayoutIndexレイアウト全体での行/列のインデックスを取得します。  
ResizeOffsetリサイズオフセット値を取得します。  
解説
CalendarResizeCompletingEventArgs.Handledtrue に設定することによってリサイズ動作をキャンセルし、その後 CalendarGridLayoutSettings クラスのメソッドを使用して独自のリサイズ処理を実行できます。
使用例
次のサンプルコードは、このイベントを通じて列の平均リサイズ機能を実装する方法を示します。このサンプルコードは、ResizeMode プロパティに示されている詳細なコード例の一部を抜粋したものです。
void gcCalendarGrid1_ResizeCompleting(object sender, GrapeCity.Win.CalendarGrid.CalendarResizeCompletingEventArgs e)
{
    if (e.Direction == Orientation.Horizontal)
    {
        if (((e.LayoutIndex + 1) % 2) == 0)
        {
            e.Handled = true;

            int prevWidth = this.gcCalendarGrid.LayoutSettings.HorizontalLayoutInfo[e.LayoutIndex - 1].Length;
            int currWidth = this.gcCalendarGrid.LayoutSettings.HorizontalLayoutInfo[e.LayoutIndex].Length;

            int halfOffset = e.ResizeOffset / 2;

            this.gcCalendarGrid.LayoutSettings.SetHorizontalLength(e.LayoutIndex - 1, prevWidth + halfOffset);
            this.gcCalendarGrid.LayoutSettings.SetHorizontalLength(e.LayoutIndex, prevWidth + halfOffset);
        }
    }
}
Private Sub gcCalendarGrid1_ResizeCompleting(sender As Object, e As GrapeCity.Win.CalendarGrid.CalendarResizeCompletingEventArgs)
    If e.Direction = Orientation.Horizontal Then
        If ((e.LayoutIndex + 1) Mod 2) = 0 Then
            e.Handled = True

            Dim prevWidth As Integer = Me.gcCalendarGrid.LayoutSettings.HorizontalLayoutInfo(e.LayoutIndex - 1).Length
            Dim currWidth As Integer = Me.gcCalendarGrid.LayoutSettings.HorizontalLayoutInfo(e.LayoutIndex).Length

            Dim halfOffset As Integer = e.ResizeOffset / 2

            Me.gcCalendarGrid.LayoutSettings.SetHorizontalLength(e.LayoutIndex - 1, prevWidth + halfOffset)
            Me.gcCalendarGrid.LayoutSettings.SetHorizontalLength(e.LayoutIndex, prevWidth + halfOffset)
        End If
    End If
End Sub
参照

GcCalendarGrid クラス
GcCalendarGrid メンバ

 

 


© 2014 GrapeCity inc. All rights reserved.