Руководство Microsoft по созданию WPF «гелевых» кнопок - PullRequest
2 голосов
/ 16 мая 2009

Кто-нибудь знает, где можно найти рекомендации Microsoft по созданию кнопок типа геля WPF? Я не уверен, что «гель» - правильное название для этого эффекта, но я слышал, что многие люди используют этот термин. Если у MS нет руководства, есть ли у вас другие стандарты или рекомендации по созданию этих кнопок?

1 Ответ

2 голосов
/ 16 мая 2009

Посмотрите на стеклянную кнопку .

Существует несколько элементов XAML которые идут в составлении кнопки. Они четко прокомментированы в XAML но список выглядит следующим образом:

  • Drop-shadow: эллипс с радиальным градиентом черного, исчезающего * 1009 дерево синтаксиса прояснит *
  • Окружение кнопок: белый эллипс, немного больше зеленого
  • Черный фон кнопки: виден только по краям зеленого при нажатии кнопки
  • Цвет основной кнопки: зеленый (или любой другой цвет) кнопка. Этот эллипс обрезается до его первоначальный план, что позволяет нам слегка переместить эллипс для нажатие кнопки без наложения кнопка объемного звучания
  • Верхнее свечение: эллипс с линейным градиентным фоном белого цвета (на сверху) исчезает до прозрачного. Меньшие чем основной цвет кнопки и расположены так, что вершины являются то же самое
  • Нижнее свечение: эллипс того же размера, что и основной цвет кнопки, но с линейным градиентным фоном белый (внизу) исчезает до прозрачный. Это также обрезается как по цвету основной кнопки.
  • Свечение при наведении: эллипс того же размера, что и основной цвет кнопки с радиальным градиентным фоном белый (в центре эллипса) исчезает до прозрачного. Это изначально прозрачный.
  • Прозрачный элемент для перехвата событий мыши: поверх всего этого есть прозрачный эллипс того же размера, что и белая кнопка объемного для ловли MouseEnter, MouseLeave, MouseLeftButtonDown и События MouseLeftButtonUp. это элемент также содержит раскадровку для пульсирующего эффекта зависания (хотя это может быть в любом XAML элемент).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...