Поделиться через


Пошаговое руководство. Добавление проверки в набор данных

В данном пошаговом руководстве показано, как проверить данные при их изменении в наборе данных. Момент выполнения проверки данных зависит от требований приложения; в данном пошаговом руководстве данные проверяются во время изменения значений в отдельных столбцах. В данном пошаговом руководстве для проверки допустимости значения, вводимого в запись, используется событие ColumnChanging. Если значение не является допустимым, то пользователю отображается элемент управления ErrorProvider.

В примере также показано, как использовать конструктор набора данных при создании частичного класса для набора данных. (В частичный класс пользователь может добавлять код для расширения функциональности набора данных, сгенерированного Visual Studio. Он не будет перезаписан при регенерации набора данных).

Примечание

Отображаемые диалоговые окна и команды меню могут отличаться от описанных в справке в зависимости от текущих настроек или выпуска.Чтобы изменить параметры, выберите в меню Сервис пункт Импорт и экспорт параметров.Дополнительные сведения см. в разделе Работа с параметрами.

В этом пошаговом руководстве демонстрируется выполнение следующих задач.

Обязательные компоненты

Для выполнения этого пошагового руководства потребуется следующее.

Создание нового приложения Windows

Для создания нового проекта приложения Windows

  1. В меню Файл создайте новый проект.

  2. Назовите проект ValidationWalkthrough.

  3. Выберите Приложение Windows и нажмите OK. Дополнительные сведения см. в разделе Создание приложения для Windows.

    Проект ValidationWalkthrough создан и добавлен в обозреватель решений.

Создание нового источника данных из вашей базы данных

Создание источника данных

  1. В меню Данные выберите команду Показать источники данных.

  2. Чтобы запустить Мастер настройки источника данных, выберите элемент Добавить новый источник данных в окне Источники данных.

  3. На странице Выбор типа источника данных выберите элемент База данных и нажмите Далее.

  4. На странице Выбор подключения базы данных выполните одно из следующих действий:

  5. Если базе данных требуется пароль, выберите параметр для включения конфиденциальных данных и щелкните Далее.

  6. Щелкните Далее на странице Сохранить строку подключения в файле конфигурации приложения.

  7. Разверните узел Таблицы на странице Выбор объектов базы данных.

  8. Выберите таблицу Order Details и щелкните Готово.

    NorthwindDataSet добавляется к проекту, и таблица OrderDetails появляется в окне Источники данных.

Создание элементов управления с привязкой данных

Чтобы создать элементы управления с привязкой к данным на форме

  1. В окне Источники данных выберите таблицу OrderDetails.

  2. Выберите Details из списка элементов управления таблицы.

  3. Перетащите узел OrderDetails из окна Источники данных на форму Form1.

    Элементы управления с привязкой к данным с подписями описания появятся на форме вместе с панелью инструментов (BindingNavigator) для управления записями. Элементы управления с привязкой к данным с подписями описания появятся на форме вместе с панелью инструментов (BindingNavigator) для управления записями. NorthwindDataSet, OrderDetailsTableAdapter, BindingSource и BindingNavigator появляются в области компонентов.

Добавление элемента управления ErrorProvider на форму

Чтобы настроить элемент управления ErrorProvider

  1. Перетащите элемент ErrorProvider из Панели элементов на форму Form1.

  2. В окне Свойства задайте свойство элемента ErrorProvider DataSource в OrderDetailsBindingSource.

    Примечание

    Не устанавливайте свойство DataMember.

Создание обработчика событий ColumnChanging

Для создания проверочных обработчиков событий

  1. Откройте набор данных NorthwindDataSet в окне Конструктор наборов данных, дважды щелкнув файл NorthwindDataSet.xsd в обозревателе решений.

  2. Дважды щелкните по столбцу Quantity в таблице OrderDetails для создания обработчика событий OrderDetailsDataTable_ColumnChanging. (В C# будет создан только частичный класс таблицы данных.)

    Примечание

    Двойной щелчок имени таблицы (OrderDetails в строке заголовка) приведет к созданию обработчика событий RowChanging.

  3. Добавьте код, чтобы удостовериться, что в e.ProposedValue содержатся значения больше 0. Если предложенное значение равно 0 или меньше, отметьте столбец как содержащий ошибки.

    Вставьте следующий код в обработчик событий изменения столбца ниже комментария Добавьте здесь пользовательский код:

    If CType(e.ProposedValue, Short) <= 0 Then
            e.Row.SetColumnError(e.Column, "Quantity must be greater than 0")
        Else
            e.Row.SetColumnError(e.Column, "")
    End If
    
    // C#
    // Add the following code 
    // to the partial class.
        public override void EndInit()
        {
            base.EndInit();
            Order_DetailsRowChanging += TestRowChangeEvent;
        }
    
        public void TestRowChangeEvent(object sender, Order_DetailsRowChangeEvent e)
        {
            if ((short)e.Row.Quantity <= 0)
            {
                e.Row.SetColumnError("Quantity", "Quantity must be greater than 0");
            }
            else
            {
                e.Row.SetColumnError("Quantity", "");
            }
        }
    

Тестирование приложения

Тестирование приложения

  1. Нажмите клавишу F5 для запуска приложения.

  2. Измените значение в поле Количество на 0.

  3. Нажмите клавишу TAB, чтобы убрать фокус из текстового поля.

    Появляется значок ошибки поставщика.

  4. Чтобы просмотреть сообщение, поместите указатель мыши над ошибкой поставщика.

Следующие действия

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

См. также

Основные понятия

Новые возможности разработки приложений для работы с данными

Привязка элементов управления Windows Forms к данным в Visual Studio

Привязка элементов управления к данным в Visual Studio

Другие ресурсы

Пошаговые руководства работы с данными

Подключение к данным в Visual Studio

Подготовка приложения к получению данных

Выборка данных в приложение

Редактирование данных в приложении

Проверка данных

Сохранение данных