Skip to main content Skip to footer

Using Prism with Studio for WPF

Prism helps you more easily design and build rich, flexible, and easy to maintain WPF desktop applications. These libraries assist in building loosely coupled applications as well as implementing MVVM in your applications. Prism is not so much a platform or a technology, but rather it’s a set of best-practices built squarely around XAML development platforms and the Model-View-View Model (MVVM) design pattern. You can implement MVVM without Prism or any other framework, but Prism makes it easier by giving you MVVM helpers like a View Model base, commands, navigation and plenty of other good patterns for XAML development. ComponentOne WPF controls are true XAML controls. That means many things including that the controls are “lookless”, they are created and customized using Templates, Data Templates, and Template Selectors, they contain Dependency Properties, and they can be completely constructed and bound to in XAML. Views that are completely created and bound to in XAML without relying on code-behind are more loosely-coupled and that is the foundation of Prism and MVVM in general. By following these best practices in WPF, the ComponentOne UI controls naturally just work anywhere you would use the standard controls in Prism like ListView, TextBlock, etc. To show Prism in action with Studio for WPF, I took the Stock Trader reference implementation and swapped out the ListView and custom charts with the C1FlexGrid and C1Chart controls. This sample shows how swappable the UI controls are, and how it really takes no extra work to use ComponentOne WPF controls with Prism. Prism_StockTrader In addition to the controls and features that Studio for WPF offers, one of the added benefits that sometimes goes unnoticed is the simplified styling support that every ComponentOne WPF control provides. In this Stock Trader application there is a lot of XAML styling markup to customize the appearance of the default ListView control (plus every other control). With a control like C1FlexGrid you don't even have to override its template to customize the appearance. You can easily reduce your markup from a hundred lines of template clutter to about 10 property setters in a single Style. You can download this modified sample below. Download C1StockTrader_Prism.zip For more information on Prism, check out the Microsoft documentation.

ComponentOne Product Manager Greg Lutz

Greg Lutz

comments powered by Disqus