Загальні відомості про діалогових вікнах

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

Відображення конкретних відомостей для користувачів.

Зберіть інформацію від користувачів.

І відображення і збір відомостей.

ОС Windows, відомих як діалогові вікна. існує два типи: модальні і немодальні.

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

Об'єкт немодального діалоговому з іншого боку, не забороняє користувачеві активацію інших вікон, коли він відкритий. Наприклад якщо користувач бажає знайти входження конкретного слова в документі, головне вікно часто відкрийте діалогове вікно із запитом слова для пошуку. Оскільки пошук слова не забороняє редагування документа користувачем, тим не менш, не бути модальное діалогове вікно. Немодального діалогове вікно містить принаймні закрити кнопку, щоб закрити діалогове вікно і може надавати додаткові кнопки для виконання окремих функцій, таких як Знайти далі кнопку, щоб знайти наступне слово, яке відповідає критерію пошуку.

Windows Presentation Foundation (WPF) дозволяє створювати кілька типів діалогових вікон, включаючи вікна повідомлень, загальні діалогові вікна і призначені для користувача діалогові вікна. У цьому розділі обговорюються і приклад діалогового вікна містяться відповідні приклади.

Об'єкт вікно повідомлення є діалоговим вікном, яке можна використовувати для відображення текстових даних і дозволити користувачам приймати рішення за допомогою кнопок. На наступному малюнку показана вікно повідомлення, яке відображає текстові відомості, питання, який надає користувачеві три кнопки для відповіді на питання.

Загальні відомості про діалогових вікнах

Для створення вікна повідомлення, використовуйте MessageBox класу. MessageBox дозволяє налаштувати текст у вікні повідомлення, заголовок, значок і кнопки, за допомогою наступного коду.

Хоча MessageBox може бути надана можливість простого діалогового вікна поле взаємодія з користувачем, перевага використання MessageBox. є єдиним типом вікна, яке може бути відображено додатками, виконуваними в пісочниці з частковим довірою (див. безпеки), такі як XAML-додатки браузера (XBAP).

Більшість діалогових відображення і збору даних складніше, ніж результат вікна повідомлення, включаючи текст, вибір (прапорці) взаємно виключають одна одну (перемикачі) та список вибору (списки, поля зі списком, що розкривається списку поля). Для цього Windows Presentation Foundation (WPF) надає кілька загальних діалогових вікон і дозволяє створювати призначені для користувача діалогові вікна, хоча їх використання обмежене додатками, що виконуються з повною довірою.

Windowsреалізует різні багаторазово використовувані діалогові вікна, які є загальними для всіх додатків, включаючи діалогові вікна для відкриття, збереження файлів і друку. Оскільки ці діалогові реалізовані операційною системою, вони можуть спільно використовуватися всі програми, що працюють на операційну систему, яка допомагає призначеного для користувача інтерфейсу узгодженості; Коли користувачі знайомі з використанням діалогового вікна операційної системи в одному додатку, не потрібно навчитися користуватися цим діалоговим вікном в інших додатках. Оскільки ці діалогові доступні для всіх додатків і забезпечують користувачеві узгоджений інтерфейс, вони називаються загальні діалогові вікна.

Windows Presentation Foundation (WPF) інкапсулює відкрити файл, збережіть файл і друку загальні діалогові вікна і представляє їх як керовані класи для використання в самостійних додатках. Цей розділ містить короткий огляд кожного.

Діалогове вікно відкриття файлів

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

Загальні відомості про діалогових вікнах

Стандартним діалоговим вікном відкриття реалізується як OpenFileDialog класу і знаходиться в Microsoft.Win32 простору імен. У наступному коді показано, як створювати, настроювати і показувати один і способи обробки результату.

Хоча загальні діалогові вікна корисні і повинен використовуватися, коли це можливо, вони не підтримують вимоги діалогових вікон окремого домену. У цих випадках необхідно створити власні діалогові вікна. Як ми побачимо, діалогове вікно є вікном з окремими поведінками. Вікно це поведінка реалізується і, отже, використовують вікна для створення користувацьких модальних і немодального діалогових вікон.

Створення модального настроюється діалогового вікна

У цьому розділі показано, як використовувати вікна для створення реалізації типового модального діалогового вікна за допомогою Margins діалогове вікно в якості прикладу (див. Приклад діалогового вікна). Margins Діалогове вікно показано на наступному малюнку.

Загальні відомості про діалогових вікнах

Налаштування модального діалогового вікна

Інтерфейс для діалогового вікна зазвичай включає наступне:

Різні елементи управління, які необхідні для збору потрібних даних.

Відображення ОК кнопки, що користувачі клацніть, щоб закрити діалогове вікно, повернутися до функції і продовжити обробку.

Відображення скасувати кнопки, користувач натискає, щоб закрити діалогове вікно і зупинити подальшу обробку функції.

Відображення закрити кнопки в заголовку вікна.

Відображення системи меню, щоб звести до мінімуму, розгорнути, відновлення і закрити діалогове вікно.

Відкриття вище і в центрі вікна, яке відкривається діалогове вікно.

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

Натискання клавіші ESC слід налаштувати як поєднання клавіш, яке викликає скасувати натискання кнопки. Це досягається шляхом установки IsCancel властивість скасувати кнопки true.

Натиснувши клавішу ENTER (або повернення) налаштовується, як поєднання клавіш, яке викликає ОК натискання кнопки. Це досягається шляхом установки IsDefault властивість ОК кнопку true.

Наступний код демонструє цю конфігурацію.

Тут код передає відомості за замовчуванням (про поточні полях) в діалогове вікно. Він також задає Window.Owner властивість з посиланням на вікно, яке відображає діалогове вікно. Як правило, слід завжди встановлювати власника діалогове вікно, щоб задати поведінки, пов'язані зі станом вікна, загальні для всіх діалогових вікнах (див. Огляд Windows WPF Додаткові відомості).

Необхідно поставити власника для підтримки призначений для користувача інтерфейс автоматизації для діалогових вікон (див. Огляд автоматизації призначеного для користувача інтерфейсу).

Після настройки діалогового вона відображається як модальна шляхом виклику ShowDialog метод.

Перевірка призначених для користувача даних

Якщо з'являється діалогове вікно і користувач надає необхідні дані, діалогове вікно відповідає за забезпечення допустимість наданого даних з наступних причин:

З точки зору безпеки слід перевіряти всі вхідні дані.

З точки зору конкретного домену перевірка даних забороняє обробляється в коді, який потенційно може видавати виключення помилкові дані.

З точки зору взаємодії з користувачем діалогове вікно може допомогти користувачам, що показує, які дані будуть введені неприпустимі.

З точки зору продуктивності перевірка даних в багаторівневе додаток можна зменшити кількість циклів обробки між клієнтом і рівнями додатка, особливо в тому випадку, якщо додаток складається з веб-служб і серверних баз даних.

Щоб перевірити пов'язаний елемент управління в WPF, необхідно визначити правило перевірки і зв'язати його з прив'язкою. Правило перевірки - призначений для користувача клас, похідний від ValidationRule. У наступному прикладі показано правило перевірки, MarginValidationRule. яке перевіряє, що пов'язаним значенням є подвійні і знаходиться в межах зазначеного діапазону.

Схожі статті