События класса DataTable
В классе определены четыре события, которые позволяют перехватывать и в случае необходимости отменять изменения состояния таблицы данных.
- Изменения строк.
- DataRowChanging – изменения вносятся в строку таблицы.
Объявление соответствующего обработчика события имеет вид private static void Row_Changing( object sender, DataRowChangeEventArgs e )
Объявление соответствующего обработчика события имеет вид private static void Row_Changed( object sender, DataRowChangeEventArgs e )
Пример программного кода для объекта – представителя класса DataTable:
Листинг 1: ,
Параметр обработчика события DataRowChangeEventArgs обладает двумя свойствами (Action и Row), которые позволяют определить изменяемую строку и выполняемое над строкой действие. Действие кодируется значениями специального перечисления: enum RowDataAction { Add, Change, Delete, Commit, Rollback, Nothing }
Объявление соответствующего обработчика события имеет вид private static void Column_Changing (object sender, DataColumnChangeEventArgs e)
Объявление соответствующего обработчика события имеет вид private static void Column_Changed (object sender, DataColumnChangeEventArgs e)
Параметр обработчика события DataColumnChangeEventArgs e обладает тремя свойствами:
Column | Get. Объект-представитель класса DataColumn с изменённым значением |
ProposedValue | Gets, sets. Новое значение для поля в строке |
Row | Строка, содержащая запись с изменяемым (измененным) значением |
Аналогичный пример. Только теперь программируется реакция на модификацию столбца (поля), а не строки:
Листинг 2: ,