Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

De Windows Phone à Xamarin.Forms automatiquement

Malgré les progrès essentiels des Xamarin.Forms et le rachat très récent de Xamarin par Microsoft il reste un point gênant : le pseudo-XAML utilisé par les XF ne dispose pour l’instant pas de designer visuel. Mais on peut ruser !

Du C# ou du XAML

Les Xamarin.Forms sont une couche cross-plateforme qui permettent de décrire les pages d’une application d’une telle façon qu’elles seront compilées et utilisables sur toutes les plateformes à la fois. C’est l’unification des IHM après celle du code.

Pour coder les Xamarin.Forms il existe au départ un moyen simple : C#. On créer les conteneurs et leur contenu comme on peut écrire du XAML entièrement en C# aussi.

La logique des hiérarchies de classe étant claires on peut écrire en C# un code “visuel” assez facilement lisible. Mais rien ne vaut le retour visuel !

Les Xamarin.Forms ont évolué en proposant la possibilité de décrire les pages non plus en code C# mais en code “XAML”, un XAML portable donc simplifié (par exemple ne cherchez pas comment faire des courbes de Béziers, Windows traite le vectoriel pas Android ni iOS à ma connaissance).

On en arrive donc à écrire des pages XAML qui ressemblent beaucoup à du XAML standard, puisque Xamarin y a même ajouté le Binding.

Tout est là pour travailler complètement en C#/XAML et produire avec un seul code des applications cross-plateformes !

Pas de retour visuel

On peut supposer que la prochaine étape logique sera d’ajouter un designer visuel à Xamarin.Forms. Xamarin l’a fait pour Android et iOS, il n’y a aucune complexité à le faire pour les XF. D’autant que Xamarin venant d’être racheté par Microsoft, ces derniers auront certainement à cœur de rendre l’utilisation de Xamarin encore plus intégrée à Visual Studio.

Mais pour l’instant il n’y a pas de retour visuel que l’on créé des Xamarin.Forms en C# ou en XAML.

Attention, ce retour visuel existe si vous créer explicitement une IHM Android ou même iOS, et ce sous Xamarin.Studio aussi bien que Visual Studio. Je parle donc ici d’un problème spécifique aux Xamarin.Forms.

Contournement

La proximité du pseudo-XAML des XF avec le vrai XAML est telle que fournir un designer visuel sera certainement assez facile, d’où l’espoir assez grand de voir un jour cette extension apparaitre. Mais entre temps existe-t-il un moyen de “ruser” ?

Oui. Et une fois encore grâce à une âme charitable qui s’est frottée à la mise au point d’une moulinette Windows Phone vers Xamarin.Forms !

GUI-Innovation propose en effet un outil gratuit qui transforme une fiche XAML Windows Phone et  Form Xamarin.Forms. Et ce en laissant certains choix à la discrétion du développeur selon le résultat qu’il souhaite obtenir.

C’est simple, encore  en bêta mais fonctionnel.

image

 

Pour vous procurer ce petit outil bien pratique : http://goo.gl/zYyJgq

Conclusion

Il devient donc possible d’écrire une IHM Xamarin.Forms de façon visuelle en créant tout simplement une page Windows Phone et en la traduisant ensuite…

D’une part ce n’est pas le cycle de production rêvé et d’autre part il faudra certainement ici ou là faire quelques retouches. Mais cela est tout de même bien plus simple pour composer une page d’avoir un retour visuel au moins pour les grandes lignes.

Bon XDev,

 

Stay Tuned !

blog comments powered by Disqus