Windows Forms - проверка ввода DataGridView - PullRequest
1 голос
/ 25 апреля 2009

У меня есть приложение Windows Forms с DataGridView в одной из форм. DataGridView может вставлять и обновлять через типизированный набор данных, сгенерированный Visual Studio.

Я хочу показывать удобные сообщения об ошибках, когда пользователь не заполняет обязательное поле или вводит неправильный тип данных и т. Д. Вместо уродливого огромного, отображаемого по умолчанию.

Эта страница здесь дает некоторые рекомендации. Он советует мне проверить ввод данных в моих установках свойств источников данных.

Как я могу сделать это с набранным набором данных? Я привык работать с Linq To Sql, который генерировал частичные классы, но я не уверен насчет типизированных наборов данных.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 07 апреля 2011

Я сделал общее удобное сообщение об ошибке для основных проверок, используя этот код:

dataGrid.DataError += (s, e) =>
{
    if (e.Exception != null)
    {
        e.ThrowException = false;
        MessageBox.Show(this,
            String.Format("Invalid {0}",
                dataGrid.Columns[e.ColumnIndex].HeaderText),
            "Error");
    }
};

Из MSDN: Пошаговое руководство. Обработка ошибок, возникающих при вводе данных в элементе управления Windows Forms DataGridView

0 голосов
/ 25 апреля 2009

С точки зрения визуальной обратной связи winforms, я думаю, вам следует взглянуть на такую ​​концепцию, как ErrorProvider .

Если вы сосредотачиваетесь только на проверке входных данных, например, строка в целочисленном поле, это хороший подход, но, пожалуйста, имейте в виду, что настоящая проверка нетривиальных ошибок не должна выполняться с помощью модели событий проверки валидации winform ! Например, «EndDate

...