The Symphony Framework is a set of assemblies that aid the development of Synergy .NET applications. Together with CodeGen they provide a powerful, flexible environment within Microsoft Visual Studio to build great looking windows applications utilising your existing Synergy data and logic.
Windows Presentation Foundation (WPF) is the tool of choice. The user interface is written in XAML and data bound to your Synergy data exposed through Symphony Framework Data Objects. It all sounds simple, and it is. The biggest problem with XAML is that the data binding is performed at runtime, using “magic” strings. They are “magic” because at runtime they miraculously find the data source you named in the binding “string” and all is well. However, if you mistype the string then the bindings don’t work, but your application continues to execute – no errors reported, but no data.
To alleviate this problem the Symphony Framework uses CodeGen to build Synergy Repository based Styles. Styles allow you to define the “style” of a control, for example the type of input control, it’s size, field entry limitations, drop-down list bindings, error information, etc. Once defined you can reference these styles in your XAML UI code and utilise them.
In Visual Studio 2010 this worked nicely: referencing your styles worked and you could apply styles to the input controls, but there was no editor assistance – you needed to remember the style names for things to build and run correctly.
And then came along Visual Studio 2012 and things really didn’t work at all. The XAML referencing syntax was changed and broken in a big way. Some referencing worked in the XAML designer and failed at runtime, and others the reverse – meaning you couldn’t design your UI at all. Big problems!
But now Visual Studio and the Symphony Framework are back in harmony. The upcoming release of Visual Studio 2013 is a must for anyone doing any .NET development, it’s a triumph over VS2012! As well as the XAML referencing being fixed there are some cool new features that really make Symphony Framework development even easier. One such feature is that the XAML editor is now aware of all your referenced style, making the selection of the right style easier than learning your scales.
And using the right style ensures you have the right binding: hey-presto no more binding issues!
Synergy 10.1.1b is going to be release to coincide with the release of VS2013 so bookmark your diary and ensure you upgrade to the latest versions of both.
If you would like to see examples of Styles in action you check out my video at http://youtu.be/FqWpMRrSb4w.