Maison > développement back-end > C++ > Comment éviter l'affichage d'attribut en double lors de l'analyse du XML dans un C # TreeView?

Comment éviter l'affichage d'attribut en double lors de l'analyse du XML dans un C # TreeView?

Barbara Streisand
Libérer: 2025-01-27 11:51:09
original
245 Les gens l'ont consulté

How to Avoid Duplicate Attribute Display When Parsing XML into a C# TreeView?

Comment analyser un fichier XML contenant des attributs dans un contrôle TreeView en C#

Question :

Lors de l'utilisation d'une boucle foreach pour analyser un fichier XML contenant des attributs, les attributs sont affichés plusieurs fois. Comment puis-je modifier le code pour afficher la propriété une seule fois ?

Solution :

Pour afficher une propriété une seule fois dans un champ TreeView :

<code class="language-csharp">private void AddNode(XmlNode inXmlNode, TreeNode inTreeNode)
{
    if (inXmlNode.HasChildNodes)
    {
        // 检查 XmlNode 是否具有属性
        string attributes = "";
        foreach (XmlAttribute att in inXmlNode.Attributes)
        {
            attributes += " " + att.Name + ": " + att.Value;
        }
        if (!string.IsNullOrEmpty(attributes))
        {
            inTreeNode.Text += attributes;
        }


        foreach (XmlNode node in inXmlNode.ChildNodes)
        {
            TreeNode newNode = inTreeNode.Nodes.Add(node.Name);
            AddNode(node, newNode);
        }
    }
}</code>
Copier après la connexion

Instructions :

Le code mis à jour déplace la boucle d'attribut en dehors de la boucle du nœud enfant. Cela garantit que l'attribut n'est affiché qu'une seule fois, même s'il existe plusieurs nœuds enfants sous le nœud parent. Le code amélioré utilise la variable chaîne attributes pour accumuler tous les attributs, puis les ajoute à inTreeNode.Text en même temps, évitant ainsi les ajouts répétés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal