0
我有一个关于TreeView及其在C#中的节点的问题。C#TreeView,选择childnode时的事件
我目前正在尝试做什么。我有一个TreeView,并在它旁边有一个TableLayoutPanel。当我点击节点时,我想调用特定的方法并在TableLayoutPanel中显示数据 。显示数据工作正常,但我的问题是,我不知道如何确定如何确定已选择Node/ChildNode。
我有一个TreeView,看起来像这样
Root1
R1Child1
R1Child2
Root2
R2Child1
R2Child2
Root3
R3Child1
R3Child2
我现在处理这个由AfterSelect方法,只是检查的文本选择的节点。
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");
}
}
在我看来这是检查节点已经被点击了什么非常不切实际的方法,因为它只是检查字符串,而且它不是非常有效的..
下一个问题,对于内存节点。我显示所有安装的物理存储器并将它们中的每一个添加为一个ChildNode。现在,当我点击其中一个时,它应该在我的TableLayoutPanel中显示所选内存的数据。但它总是只显示“最后”一个。
希望你的帽子明白我的意思...... 如果没有,只是要求更多的信息:-)
干杯, Consti
为什么你不使用标签属性?把一个ID放在每个节点唯一的标签属性中。关于“Next Problem”我不明白 – 2016-09-29 12:24:05
@Shoushou,谢谢你的解决我的问题!我正在努力,谢谢! –
非常好!我会把它作为答案,所以请接受它!享受编程! – 2016-09-29 13:34:35