Disclaimer - This is not a professional tool to enhance your presentation experience as the title of the blog post implies. It is merely a couple of hours worth of effort that I and a colleague of mine spent using our tool as our customers would use. 

This is an old project that I and Mario had created for one of our app bashes. In case you are wondering, an app bash is one of the myriad of  test activites that we do as a team where everyone for a day stops what they are doing and uses Blend as our customers would use. The intent is to create an user application that validates end-to-end customer scenarios. This helps to find bugs and workflow issues.

The vision for XSlides was to enable folks to use the power of WPF to easily create rich, animated presentation slides using xaml and then use our presentation viewer for their presentations. Another key goal, at the time, was to get folks to create their slides in Blend itself. Our future goal was to create an application that would allow you to organize your slides, change the themes et. al. during the presentation, but we did not get to this.

We identified a key Avalon perf issue while building this application and if your run it, you will notice it too. When run in full screen mode, the animations get choppy since they are now being software rendered, but if you minimize it then it uses the full power of hardware acceleration and is much more performant. The perf issue was related to having a visual brush inside a viewport. Unfortunately, this bug did not get fixed in current version of WPF.

We provide a few sample templates for your slides - clouds, ring of light and image animation. You can easily create your own templates by adding it to the resource dictionary. Also, the organization is pretty rudimentary (we just had a few hours to come up with this app). Basically, name your slides sequentially and we will iterate throught them accordingly.

The source code is attached to this post. Feel free to use it and bring your presentations to life!

Here are some snapshots: