ComponentOne 利用ガイド
[031] GridChangedTypeEnum 列挙体の RepaintCell メンバーの廃止と CellChanged メンバの追加
移行ガイド > 各種移行資料 > WinForms 移行情報 > FlexGrid for WinForms 移行情報 > [031] GridChangedTypeEnum 列挙体の RepaintCell メンバーの廃止と CellChanged メンバの追加
変更バージョン 2.6.20112.623/4.6.20112.623
カテゴリ 表示
対応策

詳細

旧バージョンでは、GridChanged イベントが、セルを再描画しようとしたときに発生したのかどうかを、GridChangedTypeEnum 列挙体の RepaintCell メンバを利用して調べることができました。本バージョンではこのメンバが廃止され、代わりにセル内の値が変更されたことを示す CellChanged メンバが追加されました。

旧バージョンと同様の動作にするには、CellChanged メンバを使用し、セルデータ変更やデータソース変更などによる再描画を検出してください。

private void C1FlexGrid1_GridChanged(System.Object sender, C1.Win.C1FlexGrid.GridChangedEventArgs e)
{
  // if (e.GridChangedType == C1.Win.C1FlexGrid.GridChangedTypeEnum.RepaintCell)
  if (e.GridChangedType == C1.Win.C1FlexGrid.GridChangedTypeEnum.CellChanged)
  {
    MessageBox.Show("セルの再描画");
    Debug.WriteLine("C1FlexGrid1_GridChanged|e.GridChangedType:" + e.GridChangedType.ToString());
  }
}
Private Sub C1FlexGrid1_GridChanged(sender As System.Object, e As C1.Win.C1FlexGrid.GridChangedEventArgs) Handles C1FlexGrid1.GridChanged
  ' If e.GridChangedType = C1.Win.C1FlexGrid.GridChangedTypeEnum.RepaintCell Then
  If e.GridChangedType = C1.Win.C1FlexGrid.GridChangedTypeEnum.CellChanged Then
    MessageBox.Show("セルの再描画")
    Debug.WriteLine("C1FlexGrid1_GridChanged|e.GridChangedType:" + e.GridChangedType.ToString())
  End If
End Sub
関連トピック