KunAmori |
Дата: Воскресенье, 03.12.2017, 22:36 | Сообщение # 1
|
Знаток
Сообщений: 164
Статус: Offline
|
Стандартными средствами в WFA нельзя нарисовать форму, у которой были бы закругленные края. На помощь приходит класс GraphicsPath Вставляем метод в свой класс или можете вынести в отдельный класс для удобства
public static GraphicsPath RoundedRect(Rectangle baseRect, int radius) { var diameter = radius * 2; var sz = new Size(diameter, diameter); var arc = new Rectangle(baseRect.Location, sz); var path = new GraphicsPath(); // Верхний левый угол path.AddArc(arc, 180, 90); // Верхний правый угол arc.X = baseRect.Right - diameter; path.AddArc(arc, 270, 90); // Нижний правый угол arc.Y = baseRect.Bottom - diameter; path.AddArc(arc, 0, 90); // Нижний левый угол arc.X = baseRect.Left; path.AddArc(arc, 90, 90); path.CloseFigure(); return path; }
Переходим к событиям формы, ищем событие Load, два раза кликаем по нему
Вставляем следующий код:
this.Region = new Region( RoundedRect( new Rectangle(0, 0, this.Width, this.Height) , 10 ) );
Вместо 10 впишите своё число - радиус округления формы.
|
|
|
|
Drygok |
Дата: Воскресенье, 28.01.2018, 10:23 | Сообщение # 2
|
Любитель
Сообщений: 37
Статус: Offline
|
Омагад, годнота. +реп
|
|
|
|