Triggers events

Setters  A collection of Setter or EventSetter objects that set property values and attach event handlers automatically.
Ex:
<Window.Resources>
  <Style x:Key="?Style">
    <Setter Property="?" Value="?" />
    <Setter Property="?" Value="?" />
    <Setter Property="?" Value="?" />
  </Style>
</Window.Resources>
Triggers
object collection that derive from TriggerBase and
allow you to change style settings automatically.

Resources
 A collection of resources that you want to use with your styles.

BasedOn  Style inheritance. works like CSS as far as overriding is concerned.

TargetType
 A property that identifies the element type that this style acts upon.

Trigger
 This is the simplest form of trigger. It watches for a change in a dependency property and then uses a setter to change the style.

MultiTrigger  This is similar to Trigger but combines multiple conditions. 
DataTrigger  This trigger works with data binding. It's similar to Trigger, except it watches for a change in any bound data.

MultiDataTrigger Multiple data triggers.

EventTrigger  applies an animation when an event occurs.