A storyboard seems kind of overkill for a simple color change. I would bind the background color and create an IValueConverter for the price which is simply following along with the NotificationChanges for Price.
I'd recommend is using a IValueConverter to bind to the Background element of the Price and isolate the coloring logic there...
Xaml
<TextBlock x:Name="ChangeField"
Text="{Binding price}"
Background="{Binding price, Converter={StaticResource PriceToColorConverter}}" />
Code
[ValueConversion(typeof(decimal), typeof(Brush))]
public class PriceToColorConverter : IValueConverer
{
public object Convert(object value, Type target)
{
decimal price;
decimal.Parse(value.ToString(), price);
return (price > 0 ? Brushes.Green : Brushes.Red);
}
}