Я на 95% пути к тому, чтобы получить то, что мне нужно, но все еще есть некоторые проблемы. По сути, я бы хотел, чтобы стиль по умолчанию для всех элементов управления Button (использованный при перетаскивании Button на форму с помощью Expression Blend) вел себя так, как показано ниже:
При наведении мыши - изменить цвет шрифта кнопки на градиент И увеличить размер шрифта на 2 пункта больше, чем размер шрифта, назначенный элементу управления в его «нормальном» состоянии. Увеличение размера важно, поскольку у «кнопок» нет границ, это просто текст с тенью.
При нажатии - снова измените цвет шрифта, удалите тень, чтобы она выглядела подавленной (размер все равно останется «обычным» размером шрифта + 2 балла)
Мой текущий метод вызывает у меня некоторые проблемы, и здесь слишком много кода, чтобы публиковать здесь, поэтому я надеюсь получить несколько предложений по альтернативным подходам от кого-то с большим опытом в этом.
Я бы предпочел бы не иметь полностью настраиваемый элемент управления Button (например, "CustomButton") и просто переопределить внешний вид / стиль обычного элемента управления "Button" по умолчанию, поскольку это будет единственный тип кнопка в приложении. Но если новый класс / контроль - единственный способ, я вместо этого попробую.
Ex.
<Button Content="Button1"/>
<Button Content="Button2" FontSize="18"/>
<Button Content="Button3" FontSize="24"/>
При наведении курсора размер шрифта должен быть на +2 больше, чем назначенный размер каждой кнопки. Сейчас я делаю это, накладывая текстовый блок поверх реального текста кнопки (с несколькими привязками), но он пока не совсем работает.