Τρόπος συμπλήρωση ενός στοιχείου ελέγχου TreeView με τα δεδομένα XML σε Visual C# 2005 ή στην Visual C#.NET

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 317597 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Για Microsoft Visual Basic.NET έκδοση αυτού του άρθρου, ανατρέξτε στο θέμα 308063.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Από το βήμα βήμα περιγράφει τον τρόπο για να συμπληρώσετε ένα TreeView Έλεγχος χρησιμοποιώντας δεδομένα Extensible Markup Language (XML) στο Microsoft Visual C# 2005 ή Microsoft Visual C#.NET. Επειδή τόσο το XML και το TreeView στοιχείο ελέγχου αναπαράσταση των δεδομένων σε μια ιεραρχική μορφή του TreeView στοιχείο ελέγχου είναι φυσικά επιλογή για να εμφανίσετε δεδομένα XML.

Το TreeView στοιχείο ελέγχου έχει μια Κόμβοι συλλογή με ρίζα TreeNode αντικείμενα. Κάθε TreeNode με τη σειρά της έχει το δικό του Κόμβοι συλλογή που περιέχει περισσότερα από ένα παιδί TreeNode.

Σημείωση Αυτό το δείγμα χρησιμοποιεί το μοντέλο αντικειμένου εγγράφου (DOM) ανάλυση κλάσεις της.NET διαδικασία XML.

Για περισσότερες πληροφορίες σχετικά με τη σχεδίαση της XML στο.NET Framework, δείτε το "Αναφορές"ενότητα.

Απαιτήσεις

Η ακόλουθη λίστα περιγράφει το υλικού που συνιστώνται, λογισμικό, υποδομή δικτύου και τα service pack που χρειάζεστε:
  • Microsoft Windows XP, Microsoft Windows 2000 ή Microsoft Τα Windows NT 4.0 Service Pack 6a
  • Microsoft Data Access Components (MDAC) 2.6 ή αργότερα
  • Microsoft Visual Studio 2005 ή Microsoft Visual Studio.NET
Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τα ακόλουθα θέματα:
  • Η σύνταξη της Visual C# 2005 ή Visual C#.NET σύνταξη
  • XML και τα σχετικά πρότυπα
  • Φόρμες των Windows

Βήματα για τη δημιουργία και συμπλήρωση του στοιχείου ελέγχου TreeView με XML

  1. Επικολλήστε το ακόλουθο δείγμα κώδικα XML σε ένα νέο αρχείο κειμένου με το όνομα "Sample.xml". Αυτό το αρχείο είναι το δείγμα δεδομένων XML για αυτό το παράδειγμα:
    <?xml version="1.0"?>
    <family>
    <parent>id="grandfather"
        <parent>id="father"
             <parent>id="brother"
                <child>id="niece"
                </child>
             </parent>
             <parent>id="me"
                <child>id="son"</child>
                <child>id="daughter"</child>
             </parent>
             <child>id="sister"</child>
         </parent>
         <parent>id="uncle"
             <parent>id="cousin sister"
                <child>id="second cousin"</child>
             </parent>
             <child>id="cousin brother"</child>
         </parent>
    </parent>
    </family>
  2. Δημιουργήσετε μια νέα εφαρμογή που βασίζεται σε Windows στο Visual C# 2005 ή στην Visual C#.NET. Form1 προστίθεται από προεπιλογή στην εφαρμογή.
  3. Σύρετε νέα TreeView, Κουμπί, Ετικέτα, και Πλαίσιο κειμένου τα στοιχεία ελέγχου σε Form1.
  4. Προσθέστε το ακόλουθο δείγμα κώδικα στο τέλος της χρήση ενότητα οδηγιών σε Form1.cs:
    using System.Xml;
    					
  5. Επικολλήστε το ακόλουθο δείγμα κώδικα σε το Form1_Load συμβάν:
          
             // Initialize the controls and the form.
             label1.Text = "File Path";
             label1.SetBounds(8, 8, 50, 20);
             textBox1.Text = Application.StartupPath + "\\Sample.xml";
             textBox1.SetBounds(64, 8, 256, 20);
             button1.Text = "Populate the TreeView with XML";
             button1.SetBounds(8, 40, 200, 20);
             this.Text = "TreeView control from XML";
             this.Width = 336;
             this.Height = 368;
             treeView1.SetBounds(8, 72, 312, 264);
    					
  6. Επικολλήστε τον ακόλουθο κώδικα στο του Button1_Click συμβάν:
             try 
             {
                // SECTION 1. Create a DOM Document and load the XML data into it.
                XmlDocument dom = new XmlDocument();
                dom.Load(textBox1.Text);
    
                // SECTION 2. Initialize the TreeView control.
                treeView1.Nodes.Clear();
                treeView1.Nodes.Add(new TreeNode(dom.DocumentElement.Name));
                TreeNode tNode = new TreeNode();
                tNode = treeView1.Nodes[0];
    
                // SECTION 3. Populate the TreeView with the DOM nodes.
                AddNode(dom.DocumentElement, tNode);
                treeView1.ExpandAll();
             }
             catch(XmlException xmlEx)
             {
                MessageBox.Show(xmlEx.Message);
             }
             catch(Exception ex)
             {
                MessageBox.Show(ex.Message);
             }
    					
  7. Επικολλήστε το ακόλουθο δείγμα κώδικα μετά το Button1_Click συμβάν:
          private void AddNode(XmlNode inXmlNode, TreeNode inTreeNode)
          {
             XmlNode xNode;
             TreeNode tNode;
             XmlNodeList nodeList;
             int i;
    
             // Loop through the XML nodes until the leaf is reached.
             // Add the nodes to the TreeView during the looping process.
             if (inXmlNode.HasChildNodes)
             {
                nodeList = inXmlNode.ChildNodes;
                for(i = 0; i<=nodeList.Count - 1; i++)
                {
                   xNode = inXmlNode.ChildNodes[i];
                   inTreeNode.Nodes.Add(new TreeNode(xNode.Name));
                   tNode = inTreeNode.Nodes[i];
                   AddNode(xNode, tNode);
                }
             }
             else
             {
                // Here you need to pull the data from the XmlNode based on the
                // type of node, whether attribute values are required, and so forth.
                inTreeNode.Text = (inXmlNode.OuterXml).Trim();
             }
          }                  
       }
    }
    					
  8. Πατήστε F5 για να δημιουργήσετε και να εκτελέσετε την εφαρμογή. Βεβαιωθείτε ότι έχετε η διαδρομή του αρχείου XML είναι σωστή και στη συνέχεια κάντε κλικ το κουμπί. Θα πρέπει να εμφανίζονται τα δεδομένα XML στο του TreeView στοιχείο ελέγχου.
Σημείωση Ο πόρος μπορεί να είναι ένα αρχείο, μια διεύθυνση URL ή ροής XML. Δείτε το"Αναφορές"ενότητα για πληροφορίες σχετικά με τη χρήση του Κλάση XmlDocument για να φορτώσετε δεδομένα XML από διαφορετικές πόρους.

Βήματα για τη συμπλήρωση του στοιχείου ελέγχου TreeView με τα απαιτούμενα δεδομένα

Προηγούμενο δείγμα κώδικα αντιστοιχίζει δεδομένα δέντρο XML απευθείας το TreeView και εμφανίζει όλα τα δεδομένα. Εναλλακτικά, μπορείτε να προσθέσετε επιπλέον πληροφορίες για την εμφάνιση ή την παράλειψη ανεπιθύμητα δεδομένα.

Σε πολλές περιπτώσεις, μπορεί να θέλετε να εμφανίσετε μόνο το τμήμα των δεδομένων XML. Το τμήμα των δεδομένων που θέλετε να εμφανίσετε Μαΐου δυναμικά να κατασκευάζεται το αποτέλεσμα ένα επεκτάσιμο Μετασχηματισμός Stylesheet Language (XSL) ή το αποτέλεσμα ένα ερώτημα XPath. Αυτό η ενότητα περιγράφει τον τρόπο για να δημιουργήσετε ένα νέο έγγραφο XML με το απαιτούμενο μόνο κόμβους και στη συνέχεια προσθέστε το νέο έγγραφο για το TreeView στοιχείο ελέγχου.

Για παράδειγμα, τα ακόλουθα βήματα ανάκτησης μόνο τα θυγατρικά στοιχεία των originial δεδομένων XML χρησιμοποιώντας ερώτημα XPath, και στη συνέχεια, προσθέστε αυτή τη λίστα ως νέο κόμβο για το TreeView.
  1. Επικόλληση ακολουθεί κωδικό πριν από το TreeView1.ExpandAll γραμμή στο προηγούμενο δείγμα:
                // SECTION 4. Create a new TreeView Node with only the child nodes.
                XmlNodeList nodelist = dom.SelectNodes("//child");
                XmlDocument cDom = new XmlDocument();
                cDom.LoadXml("<children></children>");
                foreach(XmlNode node in nodelist)
                {
                   XmlNode newElem = cDom.CreateNode(XmlNodeType.Element, node.Name, node.LocalName);
                   newElem.InnerText = node.InnerText;
                   cDom.DocumentElement.AppendChild(newElem);
                }
             
                treeView1.Nodes.Add(new TreeNode(cDom.DocumentElement.Name));
                tNode = treeView1.Nodes[1];
                AddNode(cDom.DocumentElement, tNode);
    					
  2. Δημιουργήστε και εκτελέστε την εφαρμογή. Αυτή η εφαρμογή θα πρέπει να εμφανίσετε ένα νέο κόμβο ρίζας "τέκνα" στο του TreeView μαζί με τα αρχικά δεδομένα.

ΑΝΑΦΟΡΈΣ

Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
313651Χάρτης για XML με το.NET Framework
Για περισσότερες πληροφορίες, επισκεφθείτε τις ακόλουθες τοποθεσίες της Microsoft Developer Network (MSDN) στο Web:
.aspx http://msdn2.Microsoft.com/en-us/library/System.XML (vs.71)

http://msdn2.Microsoft.com/en-US/XML/Default.aspx

Ιδιότητες

Αναγν. άρθρου: 317597 - Τελευταία αναθεώρηση: Κυριακή, 29 Μαΐου 2011 - Αναθεώρηση: 4.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.0
Λέξεις-κλειδιά: 
kbbcl kbctrl kbhowtomaster kbwindowsforms kbmt KB317597 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:317597

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com