Announcement

Collapse
No announcement yet.

WPF TreeView ForEach TreeViewItem

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • WPF TreeView ForEach TreeViewItem

    Guten Tag liebe Leute,

    ... TreeView mehrere Ebene gefüllt mit TreeViewItems und anderen Controls.
    Ich möchte alle TreeViewItems durchlaufen und schaff es nicht das in EINER ForEach Schleife zu realisieren. Ich brauch immer zwei.

    1) ForEach TreeViewItem in TreeView.Items - für die Root TRVItems und
    2) ForEach TreeViewItem in TreeVieItem.Items - die Rekursiv aufgerufene Sub für die SubTRVItems

    aber mit einer Schleife ?? - ich komm einfach nicht drauf ob und wenn ja wie das geht. Hat wer einen Tipp für mich ?
    - danke

    Michael

  • #2
    Hat wer einen Tipp für mich ?
    Dann dürfte die Rekursion nicht richtig aufgebaut sein.
    Starte mit dem ROOT-Element. Die Rekursion prüft die Childs und ruft beim vorhandensein der Childs sich selber auf
    Christian

    Comment


    • #3
      .. das hab ich eigentlich auch gehofft. Nur einmal ist es "... in TreeView" und ab dann in "TreeViewItem". Muß ich dann "ForEach TreeViewItem in Control" machen ??
      - danke
      Michael

      Comment


      • #4
        .. gerade ergoogelt : http://msdn.microsoft.com/en-us/library/wwc698z7.aspx
        braucht auch zwei ForEach :-|

        Code:
        private void PrintRecursive(TreeNode treeNode)
        {
           // Print the node.
           System.Diagnostics.Debug.WriteLine(treeNode.Text);
           MessageBox.Show(treeNode.Text);
           // Print each node recursively.
           foreach (TreeNode tn in treeNode.Nodes)
           {
              PrintRecursive(tn);
           }
        }
        
        // Call the procedure using the TreeView.
        private void CallRecursive(TreeView treeView)
        {
           // Print each node recursively.
           TreeNodeCollection nodes = treeView.Nodes;
           foreach (TreeNode n in nodes)
           {
              PrintRecursive(n);
           }
        }

        Comment


        • #5
          Wenn du keinen ParentNode angelegt hast -> wohl ja
          Christian

          Comment

          Working...
          X