You can omit defining the TargetType of a Style, but, for that to work, you must define the property with a fully qualified name. For example, the preceding Style can be written as shown here to get the same result:
<Style x:Key="ButtonBaseStyle"> <Setter Property="Button.Height" Value="30"/> <Setter Property="Button.MinWidth" Value="180"/> <Setter Property="Button.FontSize" Value="16"/> <Setter Property="Button.HorizontalAlignment" Value="Center"/> <Setter Property="Button.Padding" Value="8 0"/> <Setter Property="Button.Margin" Value="4"/> <Setter Property="Button.Cursor" Value="Hand"/> <Setter Property="Button.BorderThickness...