GrapeCity.Win.CalendarGrid.v20 アセンブリ > GrapeCity.Win.CalendarGrid 名前空間 > GcCalendarGrid クラス : CellValueNeeded イベント |
Public Event CellValueNeeded As EventHandler(Of CalendarCellValueEventArgs)
public event EventHandler<CalendarCellValueEventArgs> CellValueNeeded
イベント ハンドラが、このイベントに関連するデータを含む、CalendarCellValueEventArgs 型の引数を受け取りました。次の CalendarCellValueEventArgs プロパティには、このイベントの固有の情報が記載されます。
プロパティ | 解説 |
---|---|
CellPosition | 関連する CalendarCell の位置を取得します。 GrapeCity.Win.CalendarGrid.CalendarCellEventArgsから継承されます。 |
Value | セルの値として使用される値を取得または設定します。 |
仮想モードは、大量のデータを取り扱う場合を想定して設計されています。VirtualMode プロパティが true の場合は、一定の行数の GcCalendarGrid コントロールを作成してから、CellValueNeeded イベントを処理してセルにデータを格納します。仮想モードを使用するには、ユーザーの操作に基づいて GcCalendarGrid のセルのデータ格納、編集、および削除を処理するために、基になるデータキャッシュの実装が必要となります。
コードによっては、仮想モードを実装することで GcCalendarGrid のデータアクセスパフォーマンスが向上する場合があります。
仮想モードに関連するイベントを次の表に示します。
イベント | 説明 |
---|---|
CellValueNeeded | このイベントは、コントロールがセルを描画するときや、セル値を必要とするその他のアクションを実行するときなど、データからの値が要求されたときに発生します。開発者はこのイベントを処理し、CalendarCellEventArgs.CellPosition に基づいてデータストアにマップする特定の値を CalendarCellValueEventArgs.Value プロパティに設定する必要があります。 |
CellValuePushed | このイベントは、ユーザーがセル値を編集してその値をコミットしたときなど、特定のセル値が変更されたことを通知するために発生します。開発者はこのイベントを処理してデータストアを更新する必要があります。新しい値の情報は CalendarCellValueEventArgs.Value プロパティに含まれます。編集されたセルの位置を特定するには、CalendarCellValueEventArgs の CalendarCellEventArgs.CellPosition を取得します。 |
このプロパティは、GcCalendarGrid がデータバインディングモードのときには無効です。
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