J'ai une question concernant TreeViews et leurs nœuds en C#.C# TreeView, événement lorsque childnode est sélectionné
Ce que j'essaie actuellement de faire. J'ai un TreeView et à côté un TableLayoutPanel. Lorsque je clique sur les nœuds, je veux appeler une méthode spécifique et afficher les données dans le TableLayoutPanel. L'affichage des données fonctionne bien, mais mon problème est que je ne sais pas exactement comment déterminer quel nœud/ChildNode a été sélectionné.
J'ai un TreeView qui ressemble à ceci
Root1
R1Child1
R1Child2
Root2
R2Child1
R2Child2
Root3
R3Child1
R3Child2
Je manipulons actuellement ce par une méthode AfterSelect et il suffit de cocher le nœud sélectionné pour le texte.
private void treeHardware_AfterSelect(object sender, TreeViewEventArgs e)
{
if (e.Node.Text == SysInfo.CPU.Name)
{
deleteRows();
initFixedRows();
updateTableCPU();
}
else if (e.Node.Text == ramNameIdent)
{
deleteRows();
initFixedRows();
updateTableRAM(e.Node.Index);
}
else if (e.Node.Text == "Memory")
{
deleteRows();
initFixedRows();
loadRAMDetails(0);
loadRAMOverview();
}
else if(e.Node.Text == "Mainboard")
{
deleteRows();
initFixedRows();
updateTableMainboard();
}
else
{
Console.WriteLine("ERROR");
}
}
Dans mon avis, c'est un moyen très peu pratique pour vérifier ce nœud a été cliqué, car il contrôle simplement cordes, et il nest pas très efficace ..
problème suivant, pour la mémoire de nœud. J'affiche toutes les mémoires physiques installées et ajoute chacune d'elles en tant que nœud enfant. Maintenant, quand je clique sur l'un d'entre eux, il devrait afficher les données de la mémoire sélectionnée dans mon TableLayoutPanel. Mais il montre toujours juste le "dernier".
chapeau Hope vous comprenez ce que je veux dire ... Sinon, il suffit de demander plus d'information :-)
Cheers, Consti
Pourquoi n'utilisez-vous pas la propriété Tag? mettre un ID dans la propriété de l'étiquette qui est unique pour chaque nœud. En ce qui concerne "Next Problem" je n'ai pas compris –
@Shoushou, merci cela va résoudre mon problème! Je travaille dessus merci !!! –
très bien! Je vais le mettre comme la réponse, alors s'il vous plaît acceptez-le! Profitez de la programmation! –