Est-il possible d’utiliser un concepteur Xaml ou intellisense avec Xamarin.Forms?

Xamarin 3.0 a introduit Xamarin.Forms , une abstraction d’interface utilisateur puissante qui permet aux développeurs de créer facilement des interfaces utilisateur pouvant être partagées entre Android, iOS et Windows Phone.

Il semble très puissant, mais je suis confronté à quelques difficultés pour créer une interface utilisateur car Xamarin.Forms est livré avec plus de 40 contrôles. Sans intellisense ou un concepteur minimaliste, il est plutôt contre-productif de rechercher toutes les propriétés dans le document officiel ou en parcourant le code c #.

Le Teamplate par défaut de Xaml est comme ça, et il n’est clairement pas sortingvial d’append de nouveaux contrôles sans aucune aide.

   

Y a-t-il une chance d’avoir intellisense dans Xaml ou d’utiliser le concepteur Xaml?

Xamarin.Forms ne vient pas avec un concepteur graphique (encore?). Quant à intellisense, il y a 2 parties:

  • Référence à l’élément xaml marqué avec x: Nom dans le code derrière fonctionne à la fois dans Xamarin.Studio et VisualStudio
  • L’achèvement Xaml des éléments et des atsortingbuts fonctionne dans Xamarin.Studio, et la prise en charge de la complétion des valeurs d’atsortingbuts arrive très bientôt. Malheureusement, intellisense pour Xaml dans VisualStudio ne fonctionne pas pour le moment. Mais le problème est bien connu et les solutions sont examinées.

J’ai eu du succès avec l’extension Xamarin.Forms Intellisense dans un PCL mais pas dans SAP.

entrer la description de l'image ici

Intellisense a été publié sous sa première forme, plus d’informations ici:

Mobile Essentials: Outils de productivité pour développeurs mobiles

Xamarin Studio 6.1+ inclut un prévisualiseur XAML:

entrer la description de l'image ici

Ce n’est pas parfait, mais en tant que “prévisualisation”, vous faites un bon travail de rendu de votre XAML dans différentes résolutions sur iOS et Android, y compris différentes orientations.

Une vidéo d’enregistrement obligatoire: https://brax.tv/lesson/xamarin-forms-hello-xaml-previewer/

Xamarin Evolve Videos @ https://evolve.xamarin.com

(La vidéo officielle Evolve au moment de cette publication n’est pas encore en ligne)

Si vous avez Resharper 9, alors intellisense fonctionne dans Visual Studio, avec l’extension Xamarin.Forms Intellisense mentionnée par Clint Landry.

Une société tierce développe un concepteur Xamarin.Forms appelé UI Sleuth.

Ils sont toujours en mode furtif, mais ont publié quelques vidéos de démonstration:

  • Visualisation à distance et interaction avec une application Xamarin.Forms
  • Rotation d’un élément visuel
  • Mettre en évidence un élément visuel

Je recommande de suivre le Lead Architect sur Twitter . C’est ici qu’ils publient les dernières mises à jour de l’interface utilisateur!

Tout ce qui est nécessaire pour implémenter Intellisense sur VS est d’avoir le schéma XAML de Xamarin.Forms dans un fichier .xsd placé dans le dossier approprié de Visual Studio au moment de l’installation. Je suppose que le paquetage NuGet / tâches n’a pas au moment de l’installation et de l’access requirejs par le système d’exploitation (sauf si vous exécutez Visual Studio en tant qu’administrateur et que des chemins durs dans

J’ai posé la même question à l’équipe de Xamarin et ils ont répondu que l’Intellisense devait encore suivre les mises à jour et le concepteur dans le futur (je ne sais pas pour combien de temps, même pour les canaux alpha / bêta de mise à jour).

J’espère que cela aide…

Je viens de lire un tweet à propos d’un Xamarin.Forms Designer annoncé lors de la conférence Xamarin Evolve 2016

En attendant, vous pouvez utiliser le concepteur Windows Phone et un convertisseur pour cracher le balisage Xamarin.Forms, voir: http://www.gui-innovations.com/Blog%20Posts/windows-phones-forms-to-xamarin- forms.html

Cet outil est également mentionné avec d’autres outils connexes sur: https://github.com/MvvmCross/MvvmCross-Forms/wiki/XAML-Tools-for-Xamarin

entrer la description de l'image ici

J’ai créé deux vidéos qui expliquent comment utiliser le nouveau XAML Previewer de Xamarin Studio:

Introduction:

Utilisation des données de conception:

Données de conception avec ViewModelLocator:

Un exemple du code impliqué: