Bonjour,
je sèche sur la réécriture de la procédure suivante en vb.net, surtout sur la partie du eventhandler.
Bonnes volontés, pouvez vous m'aider avec l'équivalent de la procédure en vb.net
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); } } } }
Merci d'avance
Partager