Это потому, что свойства, установленные для элемента управления, переопределяют свойства, определенные в стиле, поэтому ваш Foreground = "blue" будет переопределять все, что вы установили в стиле.Чтобы это исправить, вы можете переместить Foreground = "blue" в стиле и удалить его из свойств элемента управления.
<TextBlock Margin="18,234,5,-2" Grid.RowSpan="3">
<Underline>Remove Message</Underline>
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property= "Foreground" Value="Blue"/>
<Style.Triggers>
<Trigger Property ="IsMouseOver" Value="True">
<Setter Property= "Foreground" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>