DataGridView ConstraintException при вводе строки, исключение не отслеживается - PullRequest
0 голосов
/ 10 июня 2019

Я занимаюсь разработкой приложения для создания форм, в котором есть DataGridView, который был привязан к DataTable.В DataTable было применено уникальное ограничение на его поле EAN.Когда создается новая запись с теми же данными EAN, выдается следующее исключение (как показано на рисунке).

Я хочу обработать это исключение и отобразить другое сообщение и выполнить некоторые действия, но проблема в том, что я 'm Не удалось выяснить, откуда выбрасывается это исключение.

Пробовал устанавливать точки останова в различных частях кода, где это может произойти, также пытался заключить различные части кода в try catch.Это исключение даже не касается кода. (Наверное, это может быть проблема с событием!)

 try
 {
    Product_dataGridView.UserAddedRow += Management_dataGridView_UserAddedRow;
    Product_dataGridView.UserDeletedRow += Product_dataGridView_UserDeletedRow;
 }
 catch (Exception exe)
 {
    MessageBox.Show(exe.Message);
 }

Изображение ошибки

1 Ответ

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

Это сообщение об ошибке было обработано из следующего кода: -

Добавил это событие в конструктор, а затем написал код для решения моей проблемы и изменения сообщения об ошибке в более читаемое сообщение.

public ManagementCtrl()
{
  Product_dataGridView.DataError += Product_dataGridView_DataError;
}

, а затем

private void Product_dataGridView_DataError(object sender, DataGridViewDataErrorEventArgs e)
{         
   MessageBox.Show(e.Exception.Message + " Validated");
   //other actions
}
...