Ako sa vyznačená TreeView control s údajmi XML v Visual C# 2005 alebo v Visual C#.NET

Preklady článku Preklady článku
ID článku: 317597 - Zobraziť produkty, ktorých sa tento článok týka.
Pre Microsoft Visual Basic.ČISTÁ verziu tohto článku, pozri 308063.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

SUHRN

Tento článok krok krok-za popisuje na vyplnenie TreeView ovládanie pomocou Extensible Markup Language (XML) údaje v programe Microsoft Visual C# 2005 alebo Microsoft Visual C#.NET. Pretože obe XML a TreeView kontrola zastupovať údaje v hierarchickom formáte, TreeView kontrola je prirodzená voľba zobrazovania údajov XML.

The TreeView Ovládací prvok má Uzly Kolekcia s koreň TreeNode objekty. Každý TreeNode zasa má svoje vlastné Uzly zber, ktorý je držiteľom viac ako jedno dieťa TreeNode.

Poznámka Táto vzorka používa Document Object Model (DOM), parsování tried .NET procesu XML.

Ďalšie informácie o dizajn XML v.NET Framework, pozri ”Odkazy"časť.

Požiadavky

Nasledujúci zoznam popisuje odporúčané hardvér, softvér, sieťovú infraštruktúru a balíky service pack, ktoré potrebujete:
  • Systém Microsoft Windows XP, Microsoft Windows 2000 alebo Microsoft Systém Windows NT 4.0 Service Pack 6a
  • Microsoft Data Access Components (MDAC) 2.6 alebo neskôr
  • Microsoft Visual Studio 2005 alebo Microsoft Visual Studio.NET
Tento článok predpokladá, že ste oboznámení s nasledujúce témy:
  • Vizuálne syntaxe C# 2005 alebo Visual C#.ČISTÝ syntaxe
  • XML a súvisiacich noriem
  • Formuláre systému Windows

Kroky na vytvorenie a osídlit TreeView Control s XML

  1. Prilepte Ukážkový kód XML nový textový súbor s názvom "Sample.xml". Tento súbor je vzorové údaje XML pre tento príklad:
    <?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. Vytvoriť nové systémom Windows aplikáciu Visual C# 2005 alebo v Visual C#.NET. Form1 sa predvolene pridá k žiadosti.
  3. Presuňte nové TreeView, Tlačidlo, Štítok, a Blok textu Ovládacie prvky do Form1.
  4. Pridajte nasledujúci kód vzorky na konci pomocou smerníc oddiel v Form1.cs:
    using System.Xml;
    					
  5. Prilepte nasledujúci kód vzorky do Form1_Load udalosť:
          
             // 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. Prilepte nasledujúci kód do Button1_Click udalosť:
             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. Prilepte nasledujúci kód vzorky po Button1_Click udalosť:
          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. Stlačením klávesu F5 na vybudovanie a spustenie aplikácie. Skontrolujte, či cesta k súboru XML je správne a potom kliknite na tlačidlo. Údaje XML sa objaviť v TreeView kontrola.
Poznámka Prostriedok môže byť súboru, URL alebo prúd XML. Pozri „Odkazy„oddiel informácie o používaní XmlDocument triedu na načítanie údajov XML z rôznych zdrojov.

Kroky na vyplnenie TreeView Control s požadované údaje

Predchádzajúcej ukážke kódu mapy XML strom údaje priamo do TreeView a zobrazí všetky údaje. Prípadne môžete pridať extra informácií na displeji alebo preskočiť nechcené údaje.

V mnohých prípadoch budete chcieť zobraziť len časť údajov XML. Časť údajov, ktoré chcete zobraziť môžu byť dynamicky vybudované, výsledok rozšíriteľný Transformácia Stylesheet Language (XSL), alebo výsledok dotazu XPath. Toto časť popisuje vybudovať nový dokument XML s iba požadované uzlami a potom pridajte nový dokument do TreeView kontrola.

Napríklad, nasledovné kroky načítať iba podradené prvky originial údajov XML pomocou XPath dotazu, a potom pridajte tento zoznam ako nový uzol, ktorý sa TreeView.
  1. Prilepiť len pred po kód TreeView1.ExpandAll riadok v predchádzajúcich vzorky:
                // 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. Vybudovať a potom spustiť aplikáciu. Táto žiadosť by zobrazí nový Koreňový uzol "deti" v TreeView Popri pôvodné údaje.

ODKAZY

Ďalšie informácie získate po kliknutí na nasledovné číslo článku databázy Microsoft Knowledge Base:
313651Cestovná mapa pre XML v.NET Framework
Ďalšie informácie nájdete na nasledovných webových lokalitách Microsoft Developer Network (MSDN):
http://msdn2.Microsoft.com/en-us/library/System.XML (vs.71) .aspx

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

Vlastnosti

ID článku: 317597 - Posledná kontrola: 8. novembra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • 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
Kľúčové slová: 
kbbcl kbctrl kbhowtomaster kbwindowsforms kbmt KB317597 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:317597

Odošlite odozvu

 

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