GrapeCity SPREAD for WPF 2.0J
編集とイベント

セルの編集に伴い、編集の開始や終了といったコントロールのイベントが発生します。ここでは各種イベントについて解説します。

  • クリップボードからのペーストによるイベントについては「ペーストの制御」を参照してください。
  • セル型により発生するイベントについては「セル型とイベント」を参照してください。

セルの編集開始

セルの編集が開始するとコントロールの次のイベントが発生します。詳細については「入力と編集」を参照してください。

セルの編集終了

編集が終了すると次のイベントが発生します。

セルの値変更

セルの値が変更された場合には、セルの値変更を示す以下のイベントが発生します。

上記イベントはCanReceiveCellEvents プロパティが true の場合に発生します。既定値は true です。また、以下のようなケースでイベントが発生します。

ただし、以下のケースでは プロパティの設定に関わらず、セル値変更を示すイベントは発生しません。

クリップボードからのペーストによるイベントについては「ペーストの制御」を参照してください。

サンプルコード

次のサンプルコードは、日付型セルにDateTime型以外の値が入力またはペーストされることを禁止します。

XAML
コードのコピー
 <sg:GcSpreadGrid x:Name="GcSpreadGrid1" CellValueChanging="GcSpreadGrid1_CellValueChanging" />
C#
コードのコピー
private void GcSpreadGrid1_CellValueChanging(object sender, GrapeCity.Windows.SpreadGrid.CellValueChangingEventArgs e)
{
    if( gcSpreadGrid1[e.Row, e.Column].InheritedCellType is DateTimeCellType && !(e.NewValue is DateTime) )
    {
        e.Cancel = true;
    }
}
Visual Basic
コードのコピー
Private Sub GcSpreadGrid1_CellValueChanging(sender As Object, e As CellValueChangingEventArgs)
    If TypeOf GcSpreadGrid1(e.Row, e.Column).InheritedCellType Is DateTimeCellType AndAlso TypeOf e.NewValue IsNot DateTime Then
        e.Cancel = True
    End If
End Sub
関連トピック

 

 


Copyright © 2012 GrapeCity inc. All rights reserved.