Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБОРАТОРНА РОБОТА № 4.docx
Скачиваний:
2
Добавлен:
14.08.2019
Размер:
56.06 Кб
Скачать

Створення таблиці підстановки для елементу управління combobox, listbox або checkedlistbox в windows forms

Інколи корисно відображувати дані в зручному для користувача форматі у формі Windows Forms, і при цьому зберігати їх у форматі, потрібному у використовуваній програмі. Наприклад, в бланку замовлення продуктів харчування можуть відображуватися елементи меню по їх імені в списку елементів. Проте таблиця даних реєстрації замовлення міститиме унікальні ідентифікатори, що представляють продукти харчування. У наступній таблиці представлений приклад зберігання і відображення даних бланка замовлення продуктів харчування.

OrderDetailsTable

ORDERID

Код елементу

Кількість

4085

12

1

4086

13

3

ItemTable

ID

Ім'я

12

Картопля

13

Курча

У цьому сценарії одна таблиця, OrderDetailsTable, містить фактичні відомості, що цікавлять з точки зору відображення і збереження. Проте з метою економії місця вони представлені в незручному для сприйняття вигляді. Інша таблиця, ItemTable, включає лише дані, пов’язані з представленням даних, а саме про те, який код якому продукту відповідає, дані про фактичні замовлення продуктів в ній відсутні.

Таблиця ItemTable зв’язується з елементом управління ComboBox, ListBox або CheckedListBox за допомогою трьох властивостей. Властивість DataSource містить ім’я даної таблиці. Властивість DisplayMember містить стовпець даних тієї таблиці, який необхідно відображувати в елементі управління (назва продукту). Властивість ValueMember містить стовпець даних таблиці з даними, що зберігаються (ідентифікатор).

Таблиця OrderDetailsTable зв’язується з елементом управління за допомогою колекції прив’язок, доступних через властивість DataBindings. При додаванні об’єкту прив’язки в колекцію властивість елементу управління зв’язується з конкретним елементом даних (стовпцем коду) в джерелі даних (таблиці OrderDetailsTable). Коли в елементі управління зроблений вибір, в даною таблицею зберігаються дані, що вводяться.

Створення таблиці підстановок:

  1. Додати на форму елемент управління ComboBox, ListBox або CheckedListBox.

  2. Реалізувати підключення до джерела даних.

  3. Встановити зв’язок між даними в двох таблицях.

  4. Задати наступні властивості. Вони можуть бути задані в коді або в конструкторі.

    Властивість

    Параметр

    DataSource

    Таблиця, в якій містяться відомості про те, якому коду відповідає який елемент. У наведеному вище сценарії це ItemTable.

    DisplayMember

    Стовпець таблиці джерела даних, яке необхідно відображувати в елементі управління. У наведеному вище сценарії це "Ім'я" (для завдання в коді використовуйте лапки).

    ValueMember

    Стовпець таблиці джерела даних, яке містить інформацію, що зберігається. У наведеному вище сценарії це "ID" (для завдання в коді використовуйте лапки).

  5. У процедурі викликається метод Add класу ControlBindingsCollection для прив’язки властивості SelectedValue елементу управління до таблиці, що реєструє введення форми. Крім того, замість коду це можна зробити в конструкторі за допомогою властивості DataBindings елементу управління у вікні властивостей. У наведеному вище сценарії це OrderDetailsTable, а стовпець — ITEMID.

ListBox1.DataBindings.Add("SelectedValue", OrderDetailsTable, "ITEMID")