When we reference our resources, we can either use a
StaticResource or a
DynamicResource. If you remember from Chapter 5, Using The Right Controls for The Job, a
StaticResource will look up the value of the resource just once, which is comparative to a compile-time lookup. A
DynamicResource will repeatedly look up the value of the resource each time it is requested, whether it has changed or not, like a runtime lookup.
For this reason, we should only ever use a
DynamicResource if we really need to and can attain much better performance by using the
StaticResource class instead. If we find that we need to use a lot of
DynamicResource references to access our resources, then we can refactor our code to data bind to ...