Елемент управління DomainUpDown

Елемент управління DomainUpDown призначений для введення користувачем текстової інформації і являє собою текстове поле і дві кнопки з направленими в протилежні сторони стрілками (рис. 2). Кожне натискання кнопки зі спрямованою вгору або вниз стрілкою дозволяє переміщатися за списком заданих текстових значень.

Рис.1. Елемент управління DomainUpDown на панелі Toolbar

Значення списку

Формування списку під час проектування здійснюється вручну за допомогою властивості Items. Для додавання і видалення елементів списку програмним способом призначені методи колекції Items  елемента управління DomainUpDown. Ця колекція також використовується для звернення до елементів списку, а за допомогою властивості Count дозволяє визначити їх загальну кількість.

Елементи списку можна впорядкувати за алфавітом. Для цього необхідно присвоїти значення True властивості Sorted.

Для визначення обраного значення списку служать властивості SelectedItem і Text. З їх допомогою можна задати значення (які необов'язково є елементами списку), яке вказується в текстовому полі під час запуску програми.

Для того щоб можна було циклічно переміщатися за списком, тобто при досягненні кінця (початку) списку продовжувати його перегляд з першого (останнього) елемента, необхідно задати значення True для властивості Wrap елементу управління DomainUpDown.

Значення True властивості ReadOnly елемента управління DomainUpDown забороняє користувачеві вводити текст в поле і дозволяє змінювати значення списку лише за допомогою кнопок елемента управління DomainUpDown або клавіш <↑> і <↓>. Якщо потрібно заборонити використання клавіш-стрілок, потрібно властивості InterceptArrowKeys привласнити значення False.

Зовнішній вигляд елемента керування

Для задання стилю обрамлення елемента управління використовується властивість BorderStyle, яка може приймати одне з наступних значень: Fixed3D (Об'ємна рамка), FixedSingle (Одновимірна рамка) і None (Без рамки). За замовчуванням елемент управління має тривимірну рамку.

Кнопки елемента управління DomainUpDown можуть розташовуватися праворуч і ліворуч від текстового поля. Для зміни розташування кнопок призначена властивість UpDowmAlign, що приймає значення Left і Right. Вирівняти текст в полі елемента управління DomainUpDown можна за допомогою властивості TextAlign, що приймає значення Right, Left і Center.

Приклад

Розглянемо невеликий приклад, що дозволяє скласти розклад спортивних тренувань. Результат роботи програми показаний на рис. 2. Для її створення виконаєте наступні дії:

1. Створіть новий Windows-додаток та розмістіть на формі два елементи управління Label з текстом Час і Вид спорту.

2. Перетягніть на форму два елементи управління DomainUpDown. Щоб заборонити введення довільного часу тренування, надайте значення True властивості ReadOnly першого елемента. Потім, використовуючи властивість Items, задайте елементи списків.

3. Для відображення обраних в списках значень скористайтеся елементом управління ListBox. Для цього розташуйте його на формі. Щоб елементи списку сортувалися за алфавітом, вкажіть значення True для властивості Sorted.

4. Додайте на формі дві кнопки, які дозволять додавати елементи в список та видаляти їх з нього. Задайте текст і імена для кнопок.

5. Для обробки події натискання кнопки, додає елемент в список, клацніть двічі на ній і в створену процедуру додайте наступний код:

        If (ListBox1.FindString(DomainUpDown1.Text) = ListBox.NoMatches And _

            Not DomainUpDown1.Text = "" And Not DomainUpDown2.Text = "") Then

            ListBox1.Items.Add(DomainUpDown1.Text + " — " + DomainUpDown2.Text)

        End If

Даний код забороняє додавання елемента в список в разі існування запису з тим же часом.

6. Для обробки події натискання кнопки, що видаляє виділений елемент зі списку, клацніть двічі на ній і в створену процедуру додайте наступні рядки:

        If Not ListBox1.SelectedIndex = ListBox.NoMatches Then

            ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)

        End If

Рис.2. Елемент управління DomainUpDown