TreeView Dynamique et base de données SQL
Bonjour à tous,
Pour mon travaille de stage, j'ai du reprendre un bout de code qui a été fait par un ancien stagiaire et je dois l'optimiser.
Je dois remplir une TreeView dynamiquement. Dans ma base de données, la table des composants a une relation sur elle même pour son "parent".
Le problème est que pour l'instant le code limite la TreeView à une profondeur de 5.
J'aimerais pouvoir optimiser le code pour que la TreeView puisse s'allonger à une profondeur infinie.
Voici un bout de code actuel :
Code:
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
|
foreach (Component child2 in component.SubComponents)
{
TreeNode childNode2 = new TreeNode(child2.NoSerie + " : " + child2.Designation, child2.PkComposant.ToString());
parentNode.ChildNodes.Add(childNode2);
if (child2.PkComposant == motcle) { selectedNode = childNode2; }
childNode2.ToolTip = child2.NoArticle;
foreach (Component child3 in child2.SubComponents)
{
TreeNode childNode3 = new TreeNode(child3.NoSerie + " : " + child3.Designation, child3.PkComposant.ToString());
childNode2.ChildNodes.Add(childNode3);
if (child3.PkComposant == motcle) { selectedNode = childNode3; }
childNode3.ToolTip = child3.NoArticle;
foreach (Component child4 in child3.SubComponents)
{
TreeNode childNode4 = new TreeNode(child4.NoSerie + " : " + child4.Designation, child4.PkComposant.ToString());
childNode3.ChildNodes.Add(childNode4);
if (child4.PkComposant == motcle) { selectedNode = childNode4; }
childNode4.ToolTip = child4.NoArticle;
foreach (Component child5 in child4.SubComponents)
{
TreeNode childNode5 = new TreeNode(child5.NoSerie + " : " + child5.Designation, child5.PkComposant.ToString());
childNode4.ChildNodes.Add(childNode5);
if (child5.PkComposant == motcle) { selectedNode = childNode2; }
childNode5.ToolTip = child5.NoArticle;
}
}
}
} |
Et un exemple de la TreeView :
http://img22.imageshack.us/img22/2884/treeviewi.png
Est-ce que quelqu'un aurait une idée?
Merci d'avance pour votre aide.