Привязка рабочего листа к набору данных с помощью конструктора рабочих листов GridWebs

Связывание рабочего листа с базой данных с помощью Worksheets Designer

**Шаг 1: Создание образца базы данных**
  1. Сначала мы создадим образец базы данных, который будет использоваться в этой статье. Мы используем Microsoft Access для создания базы данных, содержащей таблицу с названием Products. Его схема показана ниже. Информация о дизайне таблицы «Продукты»

дело:изображение_альтернативный_текст

  1. В таблицу «Продукты» добавлено несколько фиктивных записей. Записи в таблице «Товары»

дело:изображение_альтернативный_текст

Шаг 2: Разработка примера приложения

Веб-приложение ASP.NET создается и разрабатывается в Visual Studio.NET, как показано ниже. Образец разработанного приложения

дело:изображение_альтернативный_текст

Шаг 3. Подключение к базе данных с помощью обозревателя серверов

Пришло время подключиться к базе данных. Мы можем сделать это легко, используя Server Explorer в Visual Studio.NET.

  1. ВыбиратьПодключение для передачи данных вОбозреватель серверов и щелкните правой кнопкой мыши.
  2. ВыбиратьДобавить соединение из меню. Выбор опции «Добавить соединение»

дело:изображение_альтернативный_текст

Отображается диалоговое окно Свойства канала передачи данных. Диалоговое окно «Свойства канала передачи данных»

дело:изображение_альтернативный_текст

С помощью этого диалога вы можете подключиться к любой базе данных. По умолчанию он позволяет подключаться к базе данных SQL Server. В этом примере нам нужно подключиться к базе данных Access Microsoft.

  1. Нажмите наПровайдер вкладка
  2. ВыбиратьMicrosoft Поставщик Jet 4.0 OLE DB отПоставщик(и) OLE DB список.
  3. НажмитеСледующий. Нажмите «Далее» после выбора поставщика OLE DB.

дело:изображение_альтернативный_текст

Связь вкладка открыта.

  1. Выберите файл базы данных Access Microsoft (в нашем случае db.mdb) и нажмитеХОРОШО. Нажатие кнопки OK после выбора файла базы данных

дело:изображение_альтернативный_текст

Шаг 4. Графическое создание объектов подключения к базе данных

  1. Просмотрите таблицы в базе данных с помощьюОбозреватель серверов. Есть только одна таблица, Продукты.
  2. Перетащите таблицу «Продукты» изОбозреватель серверов кВеб-форма. Перетаскивание таблицы «Продукты» из обозревателя серверов в веб-форму

дело:изображение_альтернативный_текст

Может появиться диалоговое окно. Диалоговое окно для подтверждения включения пароля базы данных в строку подключения

дело:изображение_альтернативный_текст

Решите, хотите ли вы включить пароль базы данных в строку подключения или нет. Для этого примера мы выбралиНе включать пароль. Созданы и добавлены два объекта подключения к базе данных (oleDbConnection1 и oleDbDataAdapter1). Объекты подключения к базе данных (oleDbConnection1 и oleDbDataAdapter1), созданные и отображаемые

дело:изображение_альтернативный_текст

Шаг 5: Создание набора данных

До сих пор мы создали объекты подключения к базе данных, но нам все еще нужно где-то хранить данные после подключения к базе данных. Объект DataSet может точно хранить данные, и мы также можем легко сгенерировать его с помощью VS.NET IDE.

  1. Выбиратьоледбдатаадапер1 и щелкните правой кнопкой мыши.
  2. ВыбиратьСоздать набор данных вариант из меню. Выбор параметра «Создать набор данных»

дело:изображение_альтернативный_текст

Отображается диалоговое окно «Создать набор данных». Здесь можно выбрать имя для создаваемого нового объекта DataSet и таблицы, которые следует к нему добавить.

  1. ВыберитеДобавьте этот набор данных в дизайнер вариант.
  2. НажмитеХОРОШО. Нажатие кнопки OK для создания DataSet

дело:изображение_альтернативный_текст

В дизайнер добавлен объект dataSet11. Набор данных создан и добавлен в конструктор

дело:изображение_альтернативный_текст

Шаг 6: Использование конструктора рабочих листов

Теперь пришло время открыть секрет.

  1. Выберите элемент управления GridWeb и щелкните правой кнопкой мыши.
  2. ВыбиратьДизайнер рабочих листов вариант из меню.

Выбор опции «Конструктор рабочих листов»

дело:изображение_альтернативный_текст

Отображается редактор коллекции рабочих листов (также называемый дизайнером рабочих листов). Диалоговое окно «Редактор коллекции рабочих листов»

дело:изображение_альтернативный_текст

Диалоговое окно содержит несколько свойств, которые можно настроить для привязки Sheet1 к любой таблице в базе данных.

  1. ВыберитеИсточник данных имущество. Объект dataSet11, сгенерированный на предыдущем шаге, указан в меню.
  2. Выберите набор данных11.
  3. Нажмите наDataMember имущество. Конструктор рабочих листов автоматически показывает список таблиц в dataSet11. Есть только одна таблица, Продукты.
  4. Выберите таблицу «Продукты». Установка свойств DataSource и DataMember

дело:изображение_альтернативный_текст

  1. ПроверитьБиндКолонкс имущество. Щелчок по свойству BindColumns

дело:изображение_альтернативный_текст

Нажав наБиндКолонкс Свойство открывает редактор коллекции BindColumn. Редактор коллекций BindColumn

дело:изображение_альтернативный_текст

В редакторе коллекции BindColumn все столбцыПродукты table автоматически добавляются в коллекцию BindColumns.

  1. Выберите любой столбец и настройте его свойства. Например, вы можете изменить заголовок каждого столбца. Изменение заголовка столбца ProductID

дело:изображение_альтернативный_текст

  1. После внесения изменений нажмитеХОРОШО.
  2. Закройте все диалоги, нажавХОРОШО. Наконец, вы вернетесь на страницу WebForm1.aspx. Возврат на страницу WebForm1.aspx после использования конструктора рабочих листов

дело:изображение_альтернативный_текст

Выше показано имя столбца таблицы «Продукты». Ширина столбцов мала, поэтому полные названия некоторых столбцов видны не полностью.

Шаг 7: Добавление кода в обработчик событий Page_Load

Мы воспользовались конструктором рабочих листов и теперь просто должны добавить код в обработчик событий Page_Load для заполнения объекта dataSet11 данными из базы данных (используя oleDbDataAdapter1) и привязки элемента управления GridWeb к dataSet11 путем вызова его метода DataBind.

  1. Добавьте код:

C#

 //Implementing Page_Load event handler

private void Page_Load(object sender, System.EventArgs e)

{

    //Checking if there is not any PostBack

    if (!IsPostBack)

    {

        try

        {

            //Filling DataSet with data 

            oleDbDataAdapter1.Fill(dataSet11);

            //Binding GridWeb with DataSet

            GridWeb1.DataBind();

        }

        finally

        {

            //Finally, closing database connection

            oleDbConnection1.Close();

        }

    }

}

VB.NET

 'Implementing Page_Load event handler

Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

    'Checking if there is not any PostBack

    If Not IsPostBack Then

        Try

            'Filling DataSet with data 

            oleDbDataAdapter1.Fill(dataSet11)

            'Binding GridWeb with DataSet

            GridWeb1.DataBind()

        Finally

            'Finally, closing database connection

            oleDbConnection1.Close()

        End Try

    End If

End Sub
  1. Проверьте код, добавленный в обработчик событий Page_Load. Код добавлен в обработчик событий Page_Load

дело:изображение_альтернативный_текст

Шаг 8: Запуск приложения

Скомпилируйте и запустите приложение: либо нажмитеCtrl+F5 или нажмитеНачинать. Запуск приложения

дело:изображение_альтернативный_текст

После компиляции в окне браузера открывается страница WebForm1.aspx со всеми данными, загруженными из базы данных. Данные, загруженные в элемент управления GridWeb из базы данных

дело:изображение_альтернативный_текст

Работа с элементом управления GridWeb

Когда данные загружаются в элемент управления GridWeb, он предоставляет пользователям контроль над данными. GridWeb предлагает ряд различных типов функций манипулирования данными.

Валидация данных

Aspose.Cells.GridWeb автоматически создает соответствующие правила проверки для всех связанных столбцов в соответствии с типами данных, определенными в базе данных. Просмотрите тип проверки ячейки, наведя на нее курсор. Проверка типа проверки ячейки

дело:изображение_альтернативный_текст

Здесь выбранная ячейка содержит**** валидация, что означает, что пользователи могут вводить в него только целочисленные значения. Если они вводят другое значение, возникает ошибка проверки. Более того,**<ОБЯЗАТЕЛЬНО>** показывает, что значение Product ID должно быть представлено.

Удаление строк

Чтобы удалить строку, выберите строку (или любую ячейку в строке), щелкните правой кнопкой мыши и выберитеУдалить строку. Выбор опции Удалить строку из меню

дело:изображение_альтернативный_текст

Строка будет удалена мгновенно. Данные сетки (после удаления строки)

дело:изображение_альтернативный_текст

Редактирование строк

Отредактируйте данные в ячейках или строках, а затем щелкнитеСохранять или жеПредставлять на рассмотрение чтобы сохранить изменения.

Добавление строк

  1. Чтобы добавить строку, щелкните ячейку правой кнопкой мыши и выберитеДобавить ряд. Выбор опции «Добавить строку» в меню

дело:изображение_альтернативный_текст

Новая строка добавляется на лист в конце других строк. В сетку добавлена новая строка

дело:изображение_альтернативный_текст

Слева от новой строки стоит звездочка circle , указывая на то, что строка новая.

  1. Добавьте значения в новую строку.
  2. НажмитеСохранять или жеПредставлять на рассмотрение чтобы подтвердить изменение. Сохранение изменений в данных нажатием кнопки Сохранить кнопка

дело:изображение_альтернативный_текст

Настройка числового формата

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

  1. Вернитесь в Visual Studio.NET.
  2. Откройте редактор коллекции BindColumn. Тип номера собственностьЦена продукта столбец настроен наОбщий. Для свойства NumberType задано значение General.

дело:изображение_альтернативный_текст

  1. НажмитеВыпадающий список и выберитеВалюта4 из списка. Свойство NumberType изменено на Currency4.

дело:изображение_альтернативный_текст

  1. Запустите приложение еще раз. Значения вЦена продукта столбец теперь является валютой. Цены на товары в валюте Числовой формат

дело:изображение_альтернативный_текст

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

Приложение пока позволяет своим пользователям только просматривать табличные данные. Пользователи могут редактировать данные в элементе управления GridWeb, но при закрытии браузера и открытии базы данных ничего не меняется. Внесенные изменения не сохраняются в базе данных.

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

  1. ОткрытьХарактеристики и выберите из списка событие SaveCommand элемента управления GridWeb. Выбор события SaveCommand GridWeb

дело:изображение_альтернативный_текст

  1. Дважды щелкнитеСохранитьКоманда событие, а VS.NET создает обработчик событий GridWeb1_SaveCommand.
  2. Добавьте в этот обработчик событий код, который будет обновлять базу данных любыми измененными данными в наборе данных, привязанном к рабочему листу с помощью oleDbDataAdapter1.

C#

 //Implementing the event handler for SaveCommand event

private void GridWeb1_SaveCommand(object sender, System.EventArgs e)

{

    try

    {

        //Getting the modified data of worksheet as a DataSet

        DataSet dataset = (DataSet)GridWeb1.WebWorksheets[0].DataSource;

        //Updating database according to modified DataSet

        oleDbDataAdapter1.Update(dataset);

    }

    finally

    {

        //Closing database connection

        oleDbConnection1.Close();

    }

}

VB.NET

 'Implementing the event handler for SaveCommand event

Private Sub GridWeb1_SaveCommand(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridWeb1.SaveCommand

    Try

        'Getting the modified data of worksheet as a DataSet

        Dim dataset As DataSet = CType(GridWeb1.WebWorksheets(0).DataSource, DataSet)

        'Updating database according to modified DataSet

        oleDbDataAdapter1.Update(dataset)

    Finally

        'Closing database connection

        oleDbConnection1.Close()

    End Try

End Sub

Вы также можете проверить код, добавленный в обработчик событий GridWeb1_SaveCommand. Код, добавленный в обработчик событий GridWeb1_SaveCommand

дело:изображение_альтернативный_текст

Сохраните изменения в базе данных с помощьюСохранять кнопка теперь определенно сохраняет их.

Заключение