I just wanted to make a quick post about the CPU usage.
I see in the given example "FirstFloor.ModernUI.App" the CPU usage is around 1-5% idling on my laptops i7-2630QM CPU (2Ghz). Just doing a quick google search on animations showed that one can simply set the Timeline's DesiredFrameRate to a lower framerate
(anything 30fps and below) and it will fix the animations CPU usage. I didn't want to do this as animations look bad, so I looked through the code to see what animations are working in the background. It seems like the progressbar's template is using an animation
in the background? So I simply removed the RepeatBehavior property from it's StoryBoard. This code can be found in ProgressBar.xaml (line 24) [RepeatBehavior="Forever"].
Now the CPU usage is down to 0% on idle. I'm sure there is a better way of doing this instead of just removing the RepeatBehavior.
Anyway thanks for the awesome code, I'm using it in my latest project and works great :-)