Как получить столбец по ошибке в обработчике события InvalidRowException? - PullRequest
0 голосов
/ 11 июня 2018

У меня есть winform с Devexpress GridView.

Я обрабатываю событие: InvalidRowException

Когда данные отсутствуют в обязательных столбцах (или данные не соответствуютв общем) пытаюсь показать персонализированное сообщение.

Проблема в том, что я не могу найти способ получить столбец с ошибкой.

В объекте E как InvalidRowExceptionEventArgs информация о столбце отсутствует.Я пробовал также: gridview.getcolumnerror (gridview.columns (1)) но он ничего не возвращает.

Может кто-нибудь знать, как получить столбец с ошибкой при обработке события InvalidRowException пожалуйста?

Спасибо

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

InvalidRowException дает вам строку со свойствами Row и RowHandle.Здесь вы можете исследовать и разобраться, что именно не так для каждой строки.

Чтобы ответить на ваш вопрос о том, «в каком столбце есть ошибка», посмотрите на свойство InvalidRowExceptionArgs.Exception.Это должно прояснить, почему он считает ее «недопустимой строкой».

Документацию по этому вопросу с примерами можно найти здесь .

Если вы можете публиковать полный, небольшой и воспроизводимый код вместе с тем, какое поведение вы намереваетесь достичь, я мог бы написать код для его решения.

0 голосов
/ 11 июня 2018

Поймать это исключение слишком поздно, поэтому вы ничего не можете обработать в сетке.Используйте событие ValidateRow для предотвращения недостаточного ввода данных.Оба объяснены в этой статье .

Существуют и другие подходы, такие как проверка непосредственно при выходе из редактора ячеек (а не только при выходе из строки).См. это руководство по вводу и проверке данных .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...