Article de reference

Langage de balisage d'application extensible

Langage de balisage d'application extensible ( XAML z æ m əl / ⓘ ) est unlangage déclaratif XML Microsoft la promesse de spécification ouverte de Microsoft. XAML est largement u...

Langage de balisage d'application extensible ( XAML z æ m əl / ) est unlangagedéclaratifXMLMicrosoftla promesse de spécification ouvertede Microsoft.

XAML est largement utilisé dans Windows Presentation Foundation (WPF), Silverlight , Workflow Foundation (WF), Windows UI Library (WinUI), Universal Windows Platform (UWP) et .NET Multi-platform App UI (.NET MAUI). Dans WPF et UWP, XAML est un langage de balisage d'interface utilisateur permettant de définir les éléments d'interface, la liaison de données et les événements. Dans WF, en revanche, XAML définit les flux de travail .

Les éléments XAML correspondent directement aux instances d'objets Common Language Runtime (CLR), tandis que les attributs XAML correspondent aux propriétés et événements CLR de ces objets.

Tout ce qui est créé ou implémenté en XAML peut être exprimé à l'aide d'un langage .NET plus traditionnel, tel que C# ou Visual Basic .NET . Cependant, un aspect clé de cette technologie réside dans la complexité réduite requise pour les outils de traitement du XAML, car il est basé sur XML.

Technologie

À l'origine, XAML signifiait Extensible Avalon Markup Language, Avalon étant le nom de code de Windows Presentation Foundation (WPF). Avant la fin du développement de .NET Framework 3.0, Microsoft a toutefois adopté XAML pour Workflow Foundation (WF).

Dans WPF, XAML décrit les interfaces utilisateur visuelles . WPF permet de définir des objets 2D et 3D, des rotations, des animations, ainsi qu'une variété d'autres effets et fonctionnalités. Un fichier XAML peut être compilé en un fichier BAML ( Binary Application Markup Language ) , lequel peut être inséré comme ressource dans un assembly .NET Framework. À l'exécution, le moteur du framework extrait le fichier BAML des ressources de l'assembly, l'analyse et crée un arbre visuel ou un flux de travail WPF correspondant.

Dans le contexte des workflows, XAML décrit une logique déclarative potentiellement longue, telle que celle créée par les outils de modélisation de processus et les systèmes de règles. Le format de sérialisation des workflows était auparavant appelé XOML, afin de le différencier de l'utilisation de XAML pour le balisage d'interface utilisateur, mais cette distinction n'est plus faite. Cependant, l'extension des fichiers contenant le balisage du workflow reste « .xoml ».

XAML utilise une méthode spécifique pour définir l'apparence appelée Templates ; différant de la syntaxe des feuilles de style en cascade , elle est plus proche de XBL .

Pour créer des fichiers XAML, on peut utiliser Microsoft Expression Blend , Microsoft Visual Studio , le concepteur visuel WF hébergeable ou XAMLPad.

Exemples

Cet exemple de Windows Presentation Foundation affiche le texte « Bonjour, monde ! » dans le conteneur XAML de niveau supérieur appelé Canvas.

<Canvas xmlns= "http://schemas.microsoft.com/client/2010" xmlns:x= "http://schemas.microsoft.com/winfx/2006/xaml" > <TextBlock> Bonjour, monde ! </TextBlock> </Canvas>

Il peut être nécessaire de modifier le schéma (la partie) pour qu'il fonctionne sur certains ordinateurs. En utilisant un schéma recommandé par Microsoft, l'exemple peut également être

<Canvas xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" > <TextBlock> Bonjour, monde ! </TextBlock> </Canvas>

Pour exploiter pleinement le potentiel de XAML, il est essentiel d'utiliser correctement la liaison de données et de créer des éléments utilisateur personnalisés selon les besoins. La liaison de données peut être effectuée comme suit :

<TextBox x:Name= "txtInput" /> <TextBlock Text= "{Binding ElementName=txtInput,Path=Text}" />

Différences entre les versions de XAML

Il existe trois principales implémentations Microsoft de XAML :

Ces versions présentent quelques différences dans leur comportement d'analyse syntaxique. De plus, l'analyseur XAML de Silverlight 4 n'est pas entièrement rétrocompatible avec les fichiers Silverlight 3. Les fichiers XAML de Silverlight 3 peuvent être rejetés ou analysés différemment par l'analyseur de Silverlight 4.

Outre les implémentations Microsoft, il existe également OpenSilver (anciennement connu sous le nom de CSHTML5), une implémentation de technologie web contemporaine.

Applications XAML dans les navigateurs web

Historiquement, les applications basées sur XAML pouvaient être exécutées dans certains navigateurs web , tels qu'Internet Explorer et Firefox . Cela était possible grâce aux fichiers XBAP créés à partir d'applications WPF , ou via le plugin de navigateur Silverlight . Cependant, ces deux méthodes ne sont plus prises en charge par les principaux navigateurs en raison de leur dépendance à l' interface de plugin de navigateur NPAPI , désormais abandonnée.

Inquiétudes liées au verrouillage

En 2007, le Comité européen pour les systèmes interopérables (ECIS), une coalition d'entreprises de logiciels majoritairement américaines, a accusé Microsoft de tenter de s'approprier le HTML et de le remplacer par le XAML, créant ainsi une dépendance vis-à-vis du fournisseur . Jeremy Reimer, écrivant pour Ars Technica, a qualifié cette remarque d'« erreur des plus flagrantes » et a ajouté qu'il était peu probable que le XAML remplace un jour le HTML.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index