У меня есть вопрос относительно TreeViews и их узлов в C#.C# TreeView, событие, когда выбран дочерний элемент
Что я сейчас пытаюсь сделать. У меня есть 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. Но он всегда просто показывает «последний».
Надежда шляпы вы понимаете, что я имею в виду ... Если нет, то просто попросить больше информации :-)
Приветствия, составившего
Почему вы не используете свойство Tag? поместите идентификатор в свойство тега, которое является уникальным для каждого узла. Учитывая «Следующая проблема», я не понял –
@Shoushou, спасибо, что решит мою проблему! Я работаю над этим спасибо !!! –
очень хорошо! Я отведу его как ответ, поэтому, пожалуйста, примите это! Насладитесь программированием! –