Заполнить из базы данных дерево значений (TreeView) - C#
Формулировка задачи:
Доброго дня,
хочу заполнить из базы данных дерево значений (структура дерева заранее известна), но из той информации которую нашел смог сделать только два уровня:
то что, по-идее, должно было быть добавленным в третий уровень - добавляется также во второй.
Но уже вижу что такой подход есть неприемлемым, т.к. существенно тормозит систему...
Следовательно вопрос: хотелось бы увидеть пример добавления ноду значений в его подуровень по событию нажатия на него пользователем...
public void fillTreeView() { treeView1.Nodes.Clear(); TreeNode node; foreach (DataRow row in dal.GetAllAreas().Rows) { node = treeView1.Nodes.Add(row[1].ToString()); foreach (DataRow row1 in dal.GetAllStreetAreas(Convert.ToInt32(row[0])).Rows) { node.Nodes.Add(row1[0].ToString(), row1[1].ToString()); //foreach (DataRow row2 in dal.GetAllNumHouseStreet(Convert.ToInt32(row1[0]), Convert.ToInt32(row[0])).Rows) //{ // node.Nodes[0].Nodes.Add(row2[0].ToString()); //} } } }
Решение задачи: «Заполнить из базы данных дерево значений (TreeView)»
textual
Листинг программы
private void treeView1_Click(object sender, EventArgs e) { TreeViewHitTestInfo tvht; Point pt = treeView1.PointToClient(MousePosition); tvht = treeView1.HitTest(pt); if (tvht != null) { if (tvht.Node.Nodes.Count == 0) { for (int i = 0; i < 100; i++) tvht.Node.Nodes.Add(tvht.Node.Text + i); } } } private void Form1_Load(object sender, EventArgs e) { for (int i = 0; i < 10; i++) { treeView1.Nodes.Add("Item" + i); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д