The exact order and logic that is used to determine dependency property values is reasonably complex.
Knowing this order will help you avoid unnecessary property setting, and might also clear up confusion over exactly why some attempt to influence or anticipate a dependency property value did not end up resulting in the value you expected.
Also, either animating or coercing Style is not recommended (and animating Style would require a custom animation class).
This is the second post in my series about databinding in Silverlight and WPF.
In the first post I looked at how you wire-up UI controls to a model in the absence of a databinding framework.
With the exception of animated values and coercion, local property sets are set at the highest precedence.
If you set a value locally you can expect that the value will be honored, even above any styles or control templates.
This topic explains how the workings of the Windows Presentation Foundation (WPF) property system can affect the value of a dependency property, and describes the precedence by which aspects of the property system apply to the effective value of a property.
This topic assumes that you understand dependency properties from the perspective of a consumer of existing dependency properties on WPF classes, and have read Dependency Properties Overview.
In this blog post we have looked at the binding markup extension and how this provides a concise mechanism for creating bindings.
We have also seen how the in order to create binding 'islands' within out UI.
The binding framework not only detects changes in the source property, it is able to detect changes at any point in the chain of property relationships from the I'm not going to give examples of all the various bindings that are possible, MSDN has a good reference for these.