أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيفية تعبئة عنصر تحكم TreeView مع بيانات XML في Visual C# 2005 أو في Visual C# .NET

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

317597
للحصول على إصدار Microsoft Visual Basic .NET من هذه المقالة، راجع 308063.
الموجز
توضح هذه المقالة خطوة الخطوة حسب كيفية تعبئة عنصر تحكم TreeView باستخدام لغة التوصيف الموسعة (XML) البيانات في Microsoft Visual C# 2005 أو في Microsoft Visual C# .NET. لأن كل من XML و عنصر تحكم TreeView تمثل البيانات في تنسيق هرمية أو عنصر تحكم TreeView خيار طبيعية لعرض بيانات XML.

يحتوي عنصر تحكم TreeView مجموعة عقد مع كائنات TreeNode الجذر. يحتوي كل TreeNode بدوره الخاصة به المجموعة العقد التي تحتوي على أكثر من التابعة TreeNode.

ملاحظة يستخدم هذا النموذج طراز كائن المستند (DOM) تحليل فئات .NET لعملية XML.

لمزيد من المعلومات حول التصميم XML في .NET Framework راجع قسم "References".

متطلبات

توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة و حزم الخدمات التي تحتاجها:
  • Microsoft Windows XP أو نظام التشغيل Microsoft Windows 2000 أو Microsoft Windows NT 4.0 Service Pack 6a
  • Microsoft Data Access Components 2.6 (MDAC) أو الإصدار الأحدث
  • 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.
ملاحظة قد يكون المورد ملف محدد أو دفق XML. راجع قسم "References" للحصول على معلومات حول استخدام فئة XmlDocument تحميل بيانات XML من موارد مختلفة.

الخطوات لملء عنصر تحكم TreeView مع البيانات المطلوبة

نموذج التعليمات البرمجية السابقة مخططات بيانات شجرة XML مباشرة على TreeView ويعرض كافة البيانات. بدلاً من ذلك، يمكنك إضافة معلومات إضافية إلى شاشة العرض أو تخطي البيانات غير المرغوب فيها.

في العديد من الحالات، قد تحتاج إلى عرض جزء فقط من بيانات XML. قد يكون جزء البيانات التي تريد عرضها بشكل حيوي إنشاء نتيجة تحويل لغة صفحات الأنماط الموسعة (XSL) أو نتيجة استعلام XPath. يصف هذا القسم كيفية إنشاء مستند XML جديد مع العقد المطلوبة ثم إضافة مستند جديد إلى عنصر تحكم TreeView.

على سبيل المثال، الخطوات التالية استرداد عناصر تابعة بيانات XML originial باستخدام استعلام 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 (MSDN) التالي على الويب:

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 317597 - آخر مراجعة: 05/17/2007 03:50:48 - المراجعة: 4.6

  • 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
  • kbmt kbbcl kbctrl kbhowtomaster kbwindowsforms KB317597 KbMtar
تعليقات