PowerTools MultiRow for Windows Forms 8.0J
DataError イベント
使用例 

外部のデータ解析操作または検証操作で例外がスローされたとき、またはデータソースへのデータのコミットが失敗したときに発生します。
構文
イベント データ

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

プロパティ解説
Cancel System.ComponentModel.CancelEventArgsから継承されます。
CellIndexSection内でのセルのインデックスを取得します。 GrapeCity.Win.MultiRow.CellCancelEventArgsから継承されます。
CellNameセルの名前を取得します。 GrapeCity.Win.MultiRow.CellCancelEventArgsから継承されます。
Contextこのデータエラーのコンテキストを取得します。  
Exceptionスローされてデータエラーを発生させた例外を取得します。  
RowIndexイベントが発生したオーナーRowのインデックスを取得します。 GrapeCity.Win.MultiRow.CellCancelEventArgsから継承されます。
Scopeイベントが発生したセルの領域を取得します。 GrapeCity.Win.MultiRow.CellCancelEventArgsから継承されます。
SectionIndexイベントが発生したオーナーSectionのインデックスを取得します。 GrapeCity.Win.MultiRow.CellCancelEventArgsから継承されます。
ThrowException例外をスローするかどうかを示す値を取得します。  
解説
このイベントを処理しない場合、GcMultiRowコントロール内部でスローされた例外があると、メッセージボックスが表示されます。このイベントを処理すると、メッセージボックスが表示される代わりにこのイベントが発生します。
使用例
次のサンプルコードは、このイベントを使用して、MultiRowコントロールで発生したエラーを処理する方法を示します。このサンプルコードは、DataSourceプロパティに示されている詳細なコード例の一部を抜粋したものです。
void gcMultiRow1_DataError(object sender, DataErrorEventArgs e)
{
    // The first id cell only can input number, if user input some invalid value, DataError event will be fired.
    // You should handle this event to handle some error cases.
    if ((e.Context & DataErrorContexts.Commit) != 0)
    {
        // When committing value occurs error, show a massage box to notify user, and roll back value.
        MessageBox.Show(e.Exception.Message);
        EditingActions.CancelEdit.Execute(this.gcMultiRow1);
    }
    else
    {
        // Other handle.
    }
}
Private Sub gcMultiRow1_DataError(ByVal sender As Object, ByVal e As DataErrorEventArgs) Handles gcMultiRow1.DataError

    ' The first id cell only can input number, if user input some invalid value, DataError event will be fired.
    ' You should handle this event to handle some error cases.
    If (e.Context And DataErrorContexts.Commit) <> 0 Then
        ' When committing value occurs error, show a massage box to notify user, and roll back value.
        MessageBox.Show(e.Exception.Message)
        EditingActions.CancelEdit.Execute(Me.gcMultiRow1)
        ' Other handle.
    Else
    End If
End Sub
参照

GcMultiRow クラス
GcMultiRow メンバ

 

 


© 2008-2015 GrapeCity inc. All rights reserved.