WPF, Персонализиран Windows

Изграждането на основно заявление за потребителски формуляр в WPF е лесно. Създаването на атрактивен, професионално изглеждащ прозорец с необичайна форма изисква много усилия - и често включва талантлив графичен дизайнер за скициране и фонова графика.

Основната процедура за създаване на прозорец с персонализирана форма включва следните стъпки:

Задайте свойството Window.AllowsTransparency на true.

Задайте свойството Window.WindowStyle на None, за да скриете неклиентската област на прозореца (синя граница). Ако това не бъде направено, при опит за показване на прозореца ще се появи грешка InvalidOperationException.

Задайте фона (свойство Background) на прозрачен цвят (прозрачен цвят, чиято стойност на алфа канала е нула). Друга възможност е да използвате изображение с прозрачни области за фон (с нула алфа).

Тези три стъпки ефективно премахват стандартния вид на прозореца. За да осигурите ефекта на прозорец с неправилна форма, трябва да предоставите някакъв вид непрозрачно съдържание, което има желаната форма. Тук са възможни следните опции:

Осигурете фонова графика с помощта на файлов формат, който поддържа прозрачност. Например, PNG файл може да се използва за фон. Това е пряк, ясен подход и е много полезен, когато трябва да работите с дизайнери, които не разбират XAML. Поради факта, че прозорецът ще се изобрази с повече пиксели и по-високи настройки на DPI на системата, фоновата графика може да се изкриви. Това също може да бъде проблематично, ако на потребителя е разрешено да преоразмерява прозореца.

Използвайте функциите за рисуване на формуляри, налични в WPF, за да създадете фон с векторно съдържание. Този подход елиминира загубата на качество, независимо от размера на прозореца и настройката на DPI на системата. В този случай обаче най-вероятно ще трябва да използвате инструмент за проектиране с възможност за XAML, като Expression Blend.