GrapeCity CalendarGrid for Windows Forms 2.0J
CellValueNeeded イベント
使用例 

GcCalendarGrid コントロールの VirtualMode プロパティが true の場合に、セルを書式設定して表示するために GcCalendarGrid コントロールがセルの値を要求すると発生します。
構文
イベント データ

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

プロパティ解説
CellPosition関連する CalendarCell の位置を取得します。 GrapeCity.Win.CalendarGrid.CalendarCellEventArgsから継承されます。
Valueセルの値として使用される値を取得または設定します。  
解説

仮想モードは、大量のデータを取り扱う場合を想定して設計されています。VirtualMode プロパティが true の場合は、一定の行数の GcCalendarGrid コントロールを作成してから、CellValueNeeded イベントを処理してセルにデータを格納します。仮想モードを使用するには、ユーザーの操作に基づいて GcCalendarGrid のセルのデータ格納、編集、および削除を処理するために、基になるデータキャッシュの実装が必要となります。

コードによっては、仮想モードを実装することで GcCalendarGrid のデータアクセスパフォーマンスが向上する場合があります。

仮想モードに関連するイベントを次の表に示します。

イベント 説明
CellValueNeeded このイベントは、コントロールがセルを描画するときや、セル値を必要とするその他のアクションを実行するときなど、データからの値が要求されたときに発生します。開発者はこのイベントを処理し、CalendarCellEventArgs.CellPosition に基づいてデータストアにマップする特定の値を CalendarCellValueEventArgs.Value プロパティに設定する必要があります。
CellValuePushed このイベントは、ユーザーがセル値を編集してその値をコミットしたときなど、特定のセル値が変更されたことを通知するために発生します。開発者はこのイベントを処理してデータストアを更新する必要があります。新しい値の情報は CalendarCellValueEventArgs.Value プロパティに含まれます。編集されたセルの位置を特定するには、CalendarCellValueEventArgsCalendarCellEventArgs.CellPosition を取得します。

このプロパティは、GcCalendarGrid がデータバインディングモードのときには無効です。

使用例
次のサンプルコードは、このイベントを通じて GcCalendarGrid にデータを提供する方法を示します。このサンプルコードは、VirtualMode プロパティに示されている詳細なコード例の一部を抜粋したものです。
void gcCalendarGrid_CellValueNeeded(object sender, CalendarCellValueEventArgs e)
{
    if (_valueCache.ContainsKey(e.CellPosition))
    {
        e.Value = _valueCache[e.CellPosition];
    }
    else
    {
        e.Value = "Edit Me";
    }
}
Private Sub gcCalendarGrid_CellValueNeeded(sender As Object, e As CalendarCellValueEventArgs)
    If _valueCache.ContainsKey(e.CellPosition) Then
        e.Value = _valueCache(e.CellPosition)
    Else
        e.Value = "Edit Me"
    End If
End Sub
参照

GcCalendarGrid クラス
GcCalendarGrid メンバ
VirtualMode プロパティ
CellValuePushed イベント

 

 


c 2008 GrapeCity inc. All rights reserved.