Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Ответ
 
Опции темы
Старый 26.07.2011, 04:07   #1
Читер-спонсор
 Рыцарь-защитник
Аватар для Hermein
 
Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(Hermein сломал счётчик популярности :(
Регистрация: 14.01.2011
Сообщений: 633
Популярность: 28087
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 90
Поблагодарили 717 раз(а) в 374 сообщениях
Отправить сообщение для Hermein с помощью ICQ Отправить сообщение для Hermein с помощью Skype™
 
По умолчанию C# WinForms закругленные углы

Привет, сегодня решил написать небольшой гайд по созданию textBox,richTextBox с закругленными углами на WinForms.
Как, наверное многим известно на wpf это сделать без проблем, но на WinForms возникают трудности.

Принцип прост - при загрузке формы вызывается событие Paint, перерисовывающее элемент управления.


Код:
using System;
using System.Drawing;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
кидаем на форму richTextBox, меняем свойства:
BorderStyle none;
размер и шрифт по своему усмотрению.


[Ссылки могут видеть только зарегистрированные пользователи. ]

теперь кликаем по форме 2 раза и вставляем:

Код:
Paint += new PaintEventHandler(Form1_Paint);//перерисовываем
и добавляем обработчик:

Код:
void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = this.CreateGraphics();
            Pen pen = new Pen(Brushes.White, 4);
            pen.LineJoin = LineJoin.Bevel;//задаем скошенные углы
            pen.MiterLimit = 4;//задаем ограничение толщины скошенных углов
            g.DrawRectangle(pen, new Rectangle(richTextBox1.Location.X - 1, richTextBox1.Location.Y - 1, richTextBox1.Width+3 , richTextBox1.Height+3));
            //рисуем прямоугольник с параметрами испоьзуемыми выше            
            // ex Hermein
        }
Теперь запускаем проект и вуаля!
Все намного проще чем казалось бы.

С вами был Hermein
Права на гайд принадлежат Hermein
ex Hermein for Zhyk.ru
Скачать проект можно [Ссылки могут видеть только зарегистрированные пользователи. ]


Последний раз редактировалось Hermein; 26.07.2011 в 23:41.
  Ответить с цитированием
4 пользователя(ей) сказали cпасибо:
fesssi (27.07.2011), OrBiT_DaRk[2] (15.12.2011), the-boxi (08.09.2011), •theSaboteur• (09.09.2011)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Руководство] Создаем свой внешний вид окна (WinForms). C# version Kitsune C# 11 08.05.2016 03:19
[Помогите!] Нужны запускающие фалы Lopas Общение и обсуждение Perfect World 5 24.09.2010 11:19

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 11:47.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net