Кнопка изображения без рамки, которая работает как кнопка панели инструментов? - PullRequest
1 голос
/ 22 ноября 2011

Я хочу кнопку, которая

  1. Отображение изображения без рамки, без фона, без текста
  2. Если я вкладываю в кнопку изображения, ТОГДА показывает фон и границу
  3. Также, если я наведу на него курсор, он показывает фон и границу

Я искал и пробовал так много разных вещей, но ничего такого, чего я хочу. Я попытался установить различные свойства для кнопки, чтобы сделать фон и границу прозрачными, но она все еще отображается. Я попробовал стиль с пользовательским шаблоном управления. Я бы предпочел не заново изобретать все триггеры и т. Д., Чтобы получить кнопку для рендеринга при наведении мыши. Самая большая проблема с пользовательским шаблоном элемента управления состоит в том, что тогда я теряю всю существующую функциональность и в основном создаю новый элемент управления с нуля.

Вот еще одна ссылка, которая была ближе всего к тому, что я хотел, но у меня она не работает должным образом.

Как полностью убрать границу кнопки в wpf? - НО .... по какой-то причине эффект зависания застревает. При наведении курсора мыши на изображение и граница кнопки рисует, оно остается на месте, пока я не нажму где-нибудь еще.

1 Ответ

0 голосов
/ 22 ноября 2011

На самом деле вы захотите переопределить шаблон управления.Вы не теряете никакой функциональности (кроме триггеров пользовательского интерфейса).

Исходный шаблон / шаблон по умолчанию - Это хорошая отправная точка ... скопируйте / вставьте это в себяXAML (где вы хотите стилизовать эту кнопку ... т.е. ресурсы кнопки, ресурсы UserControl / Window, ресурсы приложения?).Оттуда внесите свои коррективы.

Другой простой способ - использовать Expression Blend.Вы можете легко создать новый шаблон, основанный на существующем шаблоне, и предоставляемые им инструменты для стилизации / создания намного лучше, чем XAML для ручного кодирования (если вы не умеете это делать).Что касается отображения изображения вместо текста, просто установите изображение в качестве содержимого.Кнопка - это тип ContentControl , что означает, что он может содержать любой тип контента (Object).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...