TreeView, заполнение дочерних узлов из БД - C#

Узнай цену своей работы

Формулировка задачи:

Подтолкните на мысль...Есть таблица на ms sql (ID, PARENT_ID, NAME).Никак не получается добавить вывод дочерних узлов. Пересмотрела уже туеву хучу статей и литературы, но единственное что пока получилось- всего лиш вывод родительских узлов. На форуме рылась, но результатов, к сожалению, неособо( Вот код:
  foreach (DataRow dr in this.indexDataSet.tst.Rows)
            {
                TreeNode trNode = new TreeNode();
                trNode.Text = dr["NAME"].ToString();
                trNode.Name = dr["ID"].ToString();
                trNode.Name = dr["PARENT_ID"].ToString();
                //treeView1.Nodes.Add(trNode);
 
                if (dr["PARENT_ID"].ToString() == "0")
                {
                    treeView1.Nodes.Add(trNode);
 
                } //вот в этом месте и застряла...
 
            }
Количество дочерних узлов неограничено...

Решение задачи: «TreeView, заполнение дочерних узлов из БД»

textual
Листинг программы
foreach (DataRow dr in this.indexDataSet.tst.Rows)
            {
                TreeNode parentNode = new TreeNode();
                parentNode.Text = dr["NAME"].ToString();
                parentNode.Name = dr["ID"].ToString();
                parentNode.Name = dr["PARENT_ID"].ToString();
                //treeView1.Nodes.Add(trNode);
               TreeNode subNode = new TreeNode();
 
                if (dr["PARENT_ID"].ToString() =="0")
                {
                   // TreeNode subNode = new TreeNode();
                   // subNode.Name = dr["PARENT_ID"].ToString();
                    parentNode.Nodes.Add(subNode);
                    treeView1.Nodes.Add(parentNode);
                    foreach (DataRow r in this.indexDataSet.tst.Rows)
                    {
                        TreeNode parentNode2 = new TreeNode();
                        parentNode2.Text = r["NAME"].ToString();
                        parentNode2.Name = r["PARENT_ID"].ToString();
                        parentNode2.Name = r["ID"].ToString();
                        if (r["PARENT_ID"].ToString() ==dr["ID"].ToString())
                        {
                            subNode.Nodes.Add(parentNode2);
                         }
                    }
                }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5