Fermer

novembre 29, 2018

Comment amener votre application de bureau classique au nouveau millénaire


Les îles XAML, annoncées en mai par MS Build, ont suscité beaucoup d’intérêt et de discussions au sein de la communauté .NET. Poursuivez votre lecture pour en apprendre davantage sur notre expérience avec les îles XAML, en commençant par un aperçu de ses fonctionnalités et fonctionnalités, jusqu'aux implications pratiques pour le développement d'applications .NET.

Les îles XAML font partie des sujets d'actualité . ] Les développeurs .NET ont exploré après la déclaration liminaire de Kevin Gallo lors de la construction 2018 . a rapporté à Microsoft que plus de 2,4 millions de développeurs développaient actuellement des applications de bureau dans Visual Studio CHAQUE mois, avec une augmentation de 50% au cours des 20 derniers mois.

 Îles XAML - Développeurs .NET - Image de Visual Studio
Source : Développeur Windows Slideshare

Dans cette série de blogs, je vais couvrir tout ce que vous devez savoir sur les îles XAML, à partir de ce qu’il est réellement et ce qu’il offre aux développeurs .NET, jusqu’à la façon dont vous pouvez l’utiliser dans vos applications et insuffler une nouvelle vie et une UX améliorée à vos applications Windows Presentation Foundation (WPF) ou Windows Forms actuelles. 19659006] Commençons par expliquer comment XAML Islands est née et ce que vous pouvez en faire aujourd'hui.

Comment est né XAML Islands?

Etre développeur de postes de travail .NET aujourd'hui est vraiment excitant. Vous disposez d'une grande variété de technologies parmi lesquelles vous pouvez choisir de créer votre application. Outre les technologies déjà établies, telles que Windows Forms et WPF, Microsoft a annoncé en 2015 la plate-forme universelle Windows (UWP).
UWP n'est pas uniquement destiné aux ordinateurs de bureau, mais plutôt à une technologie multiplate-forme permettant de créer des applications pouvant s'exécuter sur des ordinateurs de bureau, Xbox, IoT, Surface Hub et Hololens.

Alors, qu'est-ce que UWP nous donne réellement que Windows Forms et WPF ne font pas?

 UWP_Features "title =" UWP_Features "style =" vertical-align: middle; "/></p data-recalc-dims=

La première chose qui nous vient à l’esprit est l’aspect moderne de UWP. Cette apparence est compatible avec le système d'exploitation. La conception Fluent intégrée à Windows 10 et à ses fonctionnalités est également prise en charge et intégrée à UWP – elle est prête à l'emploi pour les applications développées par UWP.

Ensuite, le framework fournit également certaines fonctionnalités font également partie de Windows 10, comme dans Tiles and Notifications .

Enfin, vous avez amélioré la maintenance. Cela prend en compte le Windows Store. Les applications UWP peuvent facilement être empaquetées dans .appx et déployées dans le magasin. Le magasin fournit une grande variété de services que vous pouvez intégrer – en les utilisant, vous disposez de plusieurs façons de livrer, gérer et même gagner de l'argent avec votre application.

La question qui vous vient probablement à l'esprit est la suivante: «Est-il possible d'améliorer mon application WPF / WinForms avec toutes les fonctionnalités fournies par UWP?» La réponse est «Oui».

Qu'est-ce que les îles XAML et comment peut-il être amélioré? Mon application

Votre application existante peut appeler et utiliser presque toutes les API Windows 10 . Certaines API nécessitent l'ajout d'un contrat simple pour pouvoir les utiliser.

En utilisant Desktop Bridge vous pouvez facilement conditionner votre application Win32 existante dans un fichier .appx. L'emballage confère également une notion d'identité à votre application, ce qui présente certains des avantages d'appeler des API Windows 10 supplémentaires nécessitant cette identité.

 Chemin d'amélioration "title =" Chemin d'amélioration "style =" vertical-align: middle; "/></p data-recalc-dims=

Obtenir une apparence et une convivialité compatibles avec le système d'exploitation était cependant une mission impossible jusqu'à présent. À Build 2018 Kevin Gallo a annoncé une fonctionnalité appelée «îles XAML». Grâce à ces îles, vous pouvez moderniser votre application avec UWP UI tout en utilisant au mieux votre implémentation actuelle. Elle a été officiellement publiée avec la dernière version de Windows (1809).

Intéressons-nous à présent à son fonctionnement et à son utilisation dans les îles XAML.

Fonctionnement des îles XAML

 Vue d'ensemble des îles XAML WPF UWP Image

Source ]: Développeur Windows Slideshare

Les îlots XAML sont la solution idéale pour tous les développeurs WPF / WinForms souhaitant améliorer l'apparence de leur application sans les migrer vers UWP. être directement invoqué et utilisé depuis WPF / W inForms.

La façon la plus simple de travailler avec les îles XAML consiste à utiliser les packages NuGet fournis par le Windows Community Toolkit . Le toolkit contient deux implémentations de contrôle. Ces contrôles (un pour WPF et un pour Windows Forms) englobent WindowsXamlManager et DesktopWindowXamlSource:

  • Le travail de WindowsXamlManager consiste à initialiser le framework UWP dans le thread de votre application WPF / WinForms. Cela vous permettra de créer une interface utilisateur UWP dans WPF / WinForms.
  • L’objet de DesktopWindowXamlSource est de contenir l’instance de votre contenu Island. Il héberge tous les contrôles dérivés de Windows.UI.Xaml.UIElement de UWP dans un élément d’interface utilisateur associé à un handle de fenêtre (HWND) – il restitue et obtient son entrée de HWND. En l'utilisant, vous pouvez également obtenir et définir le focus sur cet élément.

 host-controls "title =" host-controls "style =" vertical-align: middle; "/> <em data-recalc-dims= REMARQUE: Pour pouvoir pour utiliser ces API, la dernière version de Windows (1809) est requise.

Vous pouvez bien entendu utiliser WindowsXamlManager et DesktopWindowXamlSource pour implémenter votre hôte à partir de rien, mais je vous suggère d'utiliser les wrappers déjà fournis par le Vous avez les packages suivants:

  • Microsoft.Toolkit.Wpf.UI.XamlHost – contient l'encapsuleur de WindowsXamlManager et le DesktopWindowXamlSource pour WPF – le WindowsXamlHost.
  • Microsoft.Toolkit.Wpf.UI.Controls contient des wrappers pour les contrôles InkCanvas, InkToolbar, MapControl et MediaPlayerElement pouvant être utilisés directement dans WPF.
  • Microsoft.Toolkit.Forms.UI.XamlHost – contient le wrapper de WindowsXamlManager et le DesktopWindowXamlSource pour Windows Forms – WindowsXamlHost.
  • Microsoft.Toolkit.Forms.UI.Controls – contient des enveloppes pour les contrôles InkCanvas, InkToolbar, MapControl et MediaPlayerElement pouvant être utilisés directement dans Windows Forms.

Si vous êtes un développeur WPF ou Windows Forms, vous devez simplement ajouter l'un des packages mentionnés et utiliser tous les contrôles d'encapsuleur ou WindowsXamlHost pour héberger tout contrôle UWP.

Que pouvez-vous faire avec les îles XAML aujourd'hui? [19659036] Actuellement, seuls quelques contrôles UWP sont encapsulés et prêts à l'emploi – ils font partie du package Microst.Toolkit.Forms / WPF.UI.Controls:

  • WebView – Le contrôle UWP est utilisé pour afficher le contenu Web à l'aide du moteur Microsoft Edge. Oui, nous avons enfin obtenu une version moderne du contrôle WebBrowser dans nos applications WinForms et WPF!
  • WebViewCompatible – une version de WebView pouvant être utilisée avec d'autres systèmes d'exploitation (pas uniquement Windows 10). S'il est utilisé sur la machine Windows 10 version 1803, le moteur Edge est utilisé. Pour les versions antérieures, le moteur Internet Explorer est utilisé.
  • InkCanvas / InkToolbar – une surface pour l'interaction Windows Encre-base.
  • MediaPlayerElement – Vue UWP diffusant le contenu en flux et le rendu. content.

Que réserve l'avenir aux îles XAML?

Les îles XAML ayant été publiées il y a quelques mois à peine, elles sont encore en phase de développement et ne cessent de s'améliorer. Dans un proche avenir, de plus en plus de contrôles UWP devraient être encapsulés et un mécanisme permettant d'encapsuler les contrôles tiers devrait également être fourni.

Dans notre prochain article sur les îles XAML, nous allons approfondir l'utilisation des wrappers et leur expliquer comment créer des liaisons UWP à l'intérieur de votre application WPF / WinForms. En attendant, lorsque vous en aurez l'occasion, allez voir les îles XAML. Heureux de jouer avec. 1965

Et pendant que vous êtes ici, n'hésitez pas à consulter nos suites d'interface utilisateur pour les applications WPF WinForms et UWP si vous en avez intéressé à développer rapidement des applications sur ces technologies avec une belle interface utilisateur.

Les commentaires sont désactivés en mode Prévisualisation.




Source link