В Effective Java (2-е издание) рекомендуется использовать перечисления вместо статических целочисленных значений для констант.
Здесь есть хорошая рецензия на перечисления в Java: http://java.sun.com/j2se/1.5.0/docs/guide/language/enums.html
Обратите внимание, что в конце этой статьи поставлен вопрос:
Итак, когда вы должны использовать перечисления?
С ответом:
Каждый раз, когда вам нужен фиксированный набор констант
Совершенно уверен, что вы хотите использовать шаблон управления в такой ситуации. Что-то вроде:
<style>
<Setter Property="Content">
<Setter.Value>
<ControlTemplate>
<Image Img="something.jpg" />
</ControlTemplate>
</Setter.Value>
</Setter>
</style>
И добавьте шаблон элемента управления в триггер для при наведении.
Вот хорошая ссылка
Фактическая ошибка возникает из-за того, что визуальные элементы не могут быть напрямую установлены в качестве значения Setter. Однако вы можете добиться желаемого поведения, установив ContentTemplate с помощью DataTemplate или создав свой контент в качестве ресурса, либо для кнопки, либо для другого места.
<Button>
<Button.Resources>
<CheckBox x:Key="Local_MouseOverContent" Content="Mouse is over" />
</Button.Resources>
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="Content" Value="No mouse over" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Content"
Value="{StaticResource Local_MouseOverContent}" />
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
<Button>
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="Content" Value="No mouse over" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate DataType="Button">
<CheckBox Content="Mouse is over" />
</DataTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
Если вы создаете общий стиль, который будет использоваться всеми кнопками вашего приложения, вы получите конфликты визуального дерева с помощью подход, в котором изображение является ресурсом. Так что шаблон - ваш единственный выбор в этом случае.