Friday, August 19, 2016

Telerik WPF controls: XAML vs NoXAML

On a WPF project we are using the WPF controls from Telerik. Inside the Telerik folder we noticed that their are actually 2 versions of the binaries available; a ‘normal’ and a NoXaml version.

So what’s the difference and which one should I choose?

The normal assemblies contain some components together with a default set of styles and ControlTemplates. As most assemblies contain multiple components this can start to add up, as styles and templates for every component are provided. This also means that some of these assemblies are big.

To decrease the file size, a NoXaml version of the assemblies was created including only the components themselves but no xaml code(styles, brushes, controltemplates,…). However as the NoXaml version doesn’t contain any visualization information, using these alone will not make much sense. No visual output will be rendered on the screen. A NoXaml dll should therefore always be combined with a theme dll.

So which one should you pick? If you are only using a small set of components and filesize is important to you, use the NoXaml version. Otherwise you can use the ‘normal’ assemblies.

Remark: If you further want to decrease the file size, you can also decide to not use a theme dll but copy the XAML themes from the Themes.Implicit folder to your project. This allows you to remove all styling you don’t use and keep only what’s relevant.

No comments: