public static bool AllNodesChecked(TreeNodeCollection nodes)
{
foreach (TreeNode node in nodes)
{
if (!node.Checked)
{
return false;
}
AllNodesChecked(node.Nodes);
}
return true;
}
arbre test estPourquoi cette récursivité ne fonctionne-t-elle pas en C#?
A1(checked) -> B1(unchecked)
A2(checked)
A3(checked)
mais il ne retourne pas quand il frappe noeud B1.
EDIT: Merci à tous d'avoir aidé mon cerveau fatigué. La récursivité ne devrait être tentée que tôt dans la journée après une douche froide.
Doh - merci! –
+1 pour ne pas comparer un booléen à un littéral! –
Oui, je l'ai remarqué aussi. Je le blâme sur le fait qu'il ne s'appelle pas IsChecked comme il se doit. :-) –