Как создать глянцевую кнопку в С#?
Я хочу создать глянцевые кнопки с GDI + или Silverlight с С#, любые идеи или обман, как создать глянцевую кнопку? Что-то вроде изображений ниже:
Я больше интересуюсь решениями GDI +.
![http://i.stack.imgur.com/ZguQG.jpg]()
Ответы
Ответ 1
Крис Джексон, Microsoft Appcompat Guy, написал это для .NET(то есть С# и GDI +).
![enter image description here]()
Кнопки с кнопками Windows Forms: первый вариант
![enter image description here]()
Кнопки гель-кнопок Windows Forms: второй вариант
![enter image description here]()
Кнопки с кнопками Windows Forms - третий вариант
Весь код существует вместе с тщательным рассмотрением
- масштабирование с высоким разрешением dpi
- производительность и растровое кэширование
Ответ 2
Пример здесь:
В этой статье показано, как использовать WindowsVistaRenderer
и как он был создан...
Я нашел несколько слоев на чертеже кнопок...
Глянцевый эффект рисуется к северу от кнопки. Зеленый цвет представляет собой почти прозрачный цвет...
Теперь порядок, в котором мы рисуем эти слои, является критическим. Этот порядок:
- Наружная рамка
- Цвет фона кнопки (если кнопка отмечена)
- Глянцевый эффект
- Border
- Кнопка заполняет глянцевый акцент
- Внутренняя граница
- Glow
- Текст и изображение кнопки...
Ответ 3
В Silverlight очень просто создать эти кнопки в Xaml с помощью кистей.
См. Эту ссылку для некоторых хороших образцов: Глянцевые кисти с использованием радиальной градиентной кисти в WPF
Вы также можете использовать Microsoft Expression Design для создания этих кнопок или просто импортировать из Adobe Illustrator или Adobe Photoshop, а затем экспортировать их в Xaml.
Ответ 4
Вы можете использовать кнопки из этой статьи: Улучшенный GlassButton с использованием GDI +
Ответ 5
Вы также можете проверить эту статью CodeProject, хороший учебник показывает, как сделать несколько глянцевых круговых кнопок в выражении blend: Кнопка Glass Orb в Silverlight
Также есть много проектов, связанных со стеклянными кнопками и глянцевыми эффектами, выполненными с использованием GDI + или выражения blend в кодепроекте.
Ответ 6
Вы также можете использовать Expression Blend.