Возможно ли, чтобы один из дочерних узлов был выбран программно - PullRequest
0 голосов
/ 02 октября 2010

Я хотел бы выбрать один из дочерних узлов моего дерева, который будет выбран программно. Моя древовидная структура выглядит следующим образом во время выполнения

      Root
       |->A.txt(I would like to select this node after doing some iteration in my application)
         |->Child(Even if i select this node and do some operations i would like to select the above one only like that if n number of child nodes exists i would like to select the node that was with .txt extension)

Я написал следующий код, он отлично работает, но в какой-то момент я не могу это сделать, может помочь любой

Это мой код

     if (tvwACH.Nodes.Count != 0)
            {
               // tvwACH.ExpandAll();
                TreeNode tn;
                tn = tvwACH.Nodes[0];
                tvwACH.ExpandAll();
                if  (tn.Nodes.Count != 0)
                {
                    tn = tn.Nodes[0];
                }
                if (tn.Tag.ToString() == "3")
                {
                    if (tvwACH.SelectedNode.Parent != null)
                    {
                        tn.Parent.Expand();
                        tvwACH.SelectedNode = tn;
                    }
                }
            }

Мое окончательное представление дерева выглядит следующим образом

            Root
              |->Some.txt
                |->Child
                  |->Sub Child
                     |->Child (for subchild) // After this i will not have any nodes so my code works up to Sub Child but if i added some thing after clicking Child after subchild  i am unable to select the node i meeded as it has no nodes can any one help me out please

1 Ответ

0 голосов
/ 06 октября 2010

Atlast, я получил ответ

        TreeNode TvNode = tvwACH.SelectedNode.Parent;

            while (TvNode != null)
            {
                if (TvNode.Text.EndsWith(".txt", true, System.Globalization.CultureInfo.InvariantCulture))
                {
                    tvwACH.SelectedNode = TvNode;
                    TvNode = null;
                }
                else
                    TvNode = TvNode.Parent;
            }                      
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...