Bonjour,

je sèche sur la réécriture de la procédure suivante en vb.net, surtout sur la partie du eventhandler.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
        private static void ExpandSubContainers(ItemsControl parentContainer)        {
            foreach (Object item in parentContainer.Items)
            {
                TreeViewItem currentContainer = parentContainer.ItemContainerGenerator.ContainerFromItem(item) as TreeViewItem;
                if (currentContainer != null && currentContainer.Items.Count > 0)
                {
                    //expand the item
                    currentContainer.IsExpanded = true;
 
 
                    //if the item's children are not generated, they must be expanded
                    if (currentContainer.ItemContainerGenerator.Status != GeneratorStatus.ContainersGenerated)
                    {
                        //store the event handler in a variable so we can remove it (in the handler itself)
                        EventHandler eh = null;
                        eh = new EventHandler(delegate
                            {
                                //once the children have been generated, expand those children's children then remove the event handler
                                if (currentContainer.ItemContainerGenerator.Status == GeneratorStatus.ContainersGenerated)
                                {
                                    ExpandSubContainers(currentContainer);
                                    currentContainer.ItemContainerGenerator.StatusChanged -= eh;
                                }
                            });
 
 
                        currentContainer.ItemContainerGenerator.StatusChanged += eh;
                    }
                    else //otherwise the children have already been generated, so we can now expand those children
                    {
                        ExpandSubContainers(currentContainer);
                    }
                }
            }
        }
Bonnes volontés, pouvez vous m'aider avec l'équivalent de la procédure en vb.net

Merci d'avance