TOC

This article has been localized into Ukrainian by the community.

Додаток WPF:

Вікно

Коли створюватимеш WPF програму, перше, що ви побачите - це клас Window. Воно служить як основа вікна та надає нам стандартні рамки, рядок заголовка, кнопки згортання, розгортання та закриття вікна. Вікно WPF - це комбінація XAML (.xaml) файлу, де елемент <Window> - основа, та фоновий файл (CodeBehind)(.cs). Якщо ви використовуєте Visual Studio (Express) і створюєте нову WPF програму, воно створить початкове вікно для вас, яке виглядатиме якось так:

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300">
    <Grid>

    </Grid>
</Window>

Атрибут x:class каже файлу XAML який клас використовувати, у цьому випадку Window1, який Visual Studio створив для нас також. Ви знайдете його у дереві проекту в VS, як дочірній вузол XAML файлу. Загалом він виглядає якось так:

using System;
using System.Windows;
using System.Windows.Controls;
//…more using statements

namespace WpfApplication1
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }
    }
}

Як бачите, клас Window1 визначається як частковий, оскільки він поєднується з вашим файлом XAML під час виконання, щоб отримати повне вікно. Це власне те, що робить виклик InitializeComponent(), саме тому він вимагає запуску повнофункціонального вікна.

Якщо ми повернемося до файлу XAML, ви помітите ще пару цікавих атрибутів елемента Window, наприклад Title, який визначає заголовок вікна (відображається в рядку заголовка), а також початкову ширину та висоту. Існує також пара визначень простору імен, про які ми поговоримо у розділах XAML.

Ви також помітите, що Visual Studio створив для нас елемент керування Grid всередині Вікна. Сітка є однією з панелей WPF, і хоча це може бути будь-яка панель або елемент керування, Вікно може мати лише ОДИН дочірній елемент керування, тому панель, яка, в свою чергу, може містити кілька дочірніх елементів управління, як правило, є гарним вибором. Далі в цьому підручнику ми набагато детальніше розглянемо різні типи панелей, якими ви можете користуватися, оскільки вони дуже важливі в WPF.

Важливі властивості вікна

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

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

ResizeMode - Цей параметр визначає, чи може і як кінцевий користувач змінювати розмір вашого вікна. За замовчуванням - CanResize, що дозволяє користувачеві змінювати розмір вікна, як і будь-яке інше вікно, або за допомогою кнопок максимізації / мінімізації, або перетягуванням одного з країв. CanMinimize дозволить користувачеві мінімізувати вікно, але не максимізувати його або перетягувати більше або менше. NoResize - найсуворіший, коли кнопки максимізації та мінімізації видаляються, а вікно не можна перетягувати більше або менше.

ShowInTaskbar - за замовчуванням значення true, але якщо ви встановите значення false, ваше вікно не буде відображатися на панелі завдань Windows. Корисно для вікон, що не є основними, або для додатків, які слід згорнути до трею.

SizeToContent - Вирішіть, чи слід змінювати розмір Вікна, щоб він автоматично відповідав його вмісту. За замовчуванням - Manual, що означає, що розмір вікна не змінюється автоматично. Інші параметри - Width, Height і WidthAndHeight, і кожен з них автоматично регулює розмір вікна по горизонталі, вертикалі або обом.

Topmost - За замовчуванням значення false, але якщо встановлено значення true, ваше Вікно залишатиметься поверх інших вікон, якщо воно не буде згорнуто. Корисно лише для особливих ситуацій.

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

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

Існує маса інших атрибутів, тому подивіться самостійно, а потім перейдіть до наступного розділу.