81 votes

Comment ajouter des commentaires dans un fichier Xaml dans WPF?

J'ai utilisé cette syntaxe que j'ai trouvée en ligne mais elle lance une erreur :

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

xmlns:System="clr-namespace:System;assembly=mscorlib"

'Le nom ne peut pas commencer par le caractère '<', valeur hexadécimale 0x3C. Ligne 4, position 5.' Le XML n'est pas valide.

90voto

Dan J Points 10269

Je suppose que ces déclarations d'espace de noms XAML se trouvent dans la balise parent de votre contrôle? Vous ne pouvez pas mettre de commentaires à l'intérieur d'une autre balise. Mis à part cela, la syntaxe que vous utilisez est correcte.

    [..snip..]

1 votes

Merci, où puis-je le mettre? J'ai besoin de les placer à des endroits précis qui montrent mes ajouts au code.

0 votes

Comme dans mon exemple, vous devrez les placer à côté de la balise dont vous avez modifié le contenu. Vous ne pourrez pas littéralement les placer à côté d'un attribut que vous ajoutez à l'intérieur d'une balise. Est-ce nécessaire pour quelque chose qui va analyser automatiquement le XAML et faire quelque chose en fonction de vos commentaires, ou simplement pour que les autres voient ce que vous avez modifié ?

1 votes

Vous les placez à l'extérieur des balises XML. /> . Si vous retournez à votre code, vous verrez que l'endroit où vous les avez placés et où vous recevez le message d'erreur se trouve à l'intérieur d'une balise multi-lignes.

33voto

user500099 Points 344

Une solution intéressante trouvée par Laurent Bugnion peut ressembler à ceci :

Voici le lien : http://blog.galasoft.ch/posts/2010/02/quick-tip-commenting-out-properties-in-xaml/

Un commentaire sur le lien fournit des caractères supplémentaires pour le préfixe d'ignorance au lieu de surligner :

mc:Ignorable=”ØignoreØ”

3 votes

Depuis XAML est une spécialisation XML (qui est une spécialisation de SGML), vous penseriez le -- commentaire SGML -- style fonctionnerait pour les commentaires à l'intérieur des balises. Mais non, 99,44% des analyseurs XAML n'acceptent pas les commentaires SGML dans les balises.

0 votes

Ceci est la réponse la plus utile!

3 votes

Je pense que la question de @Joan Venge est comment "Supprimer temporairement du code" plutôt que "Ajouter des informations pour les lecteurs humains".

30voto

Loman Points 496

Vous ne pouvez pas insérer des commentaires à l'intérieur des balises xml.

Mauvais

xmlns:System="clr-namespace:System;assembly=mscorlib">

Bon

8 votes

@kenny: Ce commentaire est hors sujet et plein de rancœur... Basé sur XML, tout langage de programmation est un peu nul, mais au moins XAML a eu la bonne idée d'essayer de rendre tout aussi déclaratif que possible, ce qui correspond au modèle XML.

3 votes

@kenny a: xaml n'est pas un langage de programmation - c'est un langage de balisage et/ou un format de sérialisation, selon la façon dont vous le regardez... et b: cette limitation n'est pas celle de xaml - c'est celle de xml.

6 votes

Je comprends que la limitation de XAML est qu'il est basé sur XML. Ainsi, XML est un langage de programmation/balisage de second ordre. Est-ce mieux?

16voto

Jakub Lokša Points 325

Juste un conseil:

Dans Visual Studio, pour commenter un texte, vous pouvez surligner le texte que vous souhaitez commenter, puis utilisez Ctrl + K suivi de Ctrl + C. Pour décommenter, vous pouvez utiliser Ctrl + K suivi de Ctrl + U.

1 votes

En utilisant ceci tout le temps en programmant comme d'habitude, mais quand je suis entré dans le concepteur XAML, je n'ai pas pensé à celui-ci. Ça fonctionne bien.

1 votes

Cela fonctionne uniquement lorsque vous êtes en dehors de la définition d'une balise. "contenu" fonctionne, " > contenu" ne fonctionnera pas. J'ai essayé de commenter certaines propriétés sur plusieurs lignes, cela a donné une erreur.

0 votes

Juste pour clarification, dans Visual Studio 201 cela fait référence aux commandes Edit.CommentSelection et Edit.UncommentSelection.

0voto

Abdul Points 282

Vous ne pouvez pas mettre de commentaires à l'intérieur des balises UWP XAML. Votre syntaxe est correcte.

À FAIRE:

À NE PAS FAIRE:

xmlns:System="clr-namespace:System;assembly=mscorlib"/>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X