As we know that, windows 8 application and WPF application both uses XAML for UI definition and using C#, VB or C++ as backend languages. We must be aware that XAML does not understand the design that is simply transported to any application. XAML is simply an object instantiation language that happens to be very useful for user interfaces. It is to be understood that the it is not UI definition language.
In fact, the class where the UI definition is instantiated, may differ from the platform type. For example the definition of button class in windows is not as same as the windows phone application.
The framework compatibility is very difficult to access in the first place and moreover, the result may be more or less meaningful to each developers. This scenario is based on 2 aspect
- It is difficult to define what compatible really means in a way that provides a valuable indicator in the real world.
- Some classes may exist in both compared environments, yet have a largely different set of properties, methods and events, but the majority of incompatible members may be so obscure that they are hardly ever used, resulting in a high level of compatibility experienced by developers even though the measured compatibility may be low.
Example can clear it by the help of button objects. Every platforms have the button object, but the thing is the button has different property, methods in different platforms. One cannot simply copy and paste the XAML content from the WPF application to Windows phone or Windows 8 application.
While migrating the application from WPF to windows phone application, Some part of the UI needs to be changed, that leads to increase the considerable amount of work.
Working on separately on separate platforms add the hassle, although using the shared class libraries, the major work remains on XAML contents. It is better to have a research on what type of application we are building. And based on it the application can be migrated with the loss or profit of some UI elements.
This highlights a key issue with conversion of any XAML-based UI to WinRT: paradigm differences. Conversions from one paradigm to another are notoriously difficult. Although, the logic remains same, there stills need to be change in UI with change in code too.
XAML Comparer tool makes it easy, what changes needs to done. This tool creates a matrix that can be helpful to compare what is available in the platforms. However this tool just give a general guidance and we have to draw our own conclusion based on the result.
Here are few screenshots of XAML comparer tool.
For more info, you can explore : http://www.codemag.com/article/1208051