Урок 18. TreeView - показываем каталоги

TreeView, который мы начали смотреть на уроке 14 идеально подходит для показа файловой системы компьютера. Осталось только добиться, чтобы узлы дерева действительно соответствовали папкам на вашем компьютере.

Этим мы и займемся на ближайших трех уроках.

Итак, создайте Windows-приложение и разместите на его форме элементЫ дерево (TreeView) и кнопку (Button). Их имена оставьте без изменений.

Для начала добавим обработчик щелчка по кнопке:

private void button1_Click(object sender, System.EventArgs e) { // Получаем все диски (a:, c: и т.д.). string [] drives = Directory.GetLogicalDrives(); foreach(string s in drives) { // Добавляем корневой элемент для каждого диска. TreeNode tn = treeView1.Nodes.Add(s); // Добавляем фиктивный подузел для каждого // диска (для появления квадратика с плюсиком). tn.Nodes.Add(""); // Устанавливаем свойство tag. // Пустое значение свойства ("") - узел еще не раскрывался. // Плюс ("+") - узел раскрывался и в него были // добавлены нужные подузлы. tn.Tag = ""; } }

Тут мы делаем две вещи- во-первых, мы показываем все диски, которые есть на нашем компьютере (метод GetLogicalDrives) и, во-вторых, для каждого узла добавляем фиктивный подузел для появления плюсика рядом с ним.

Двигаемся дальше. Добавим код, выполняющийся перед раскрытием некоторой ветки дерева:

// Перед раскрытием ветки дерева вызываем NodeExpand. private void treeView1_BeforeExpand(object sender, System.Windows.Forms.TreeViewCancelEventArgs e) { // Добавление подузлов перед раскрытием. NodeExpand(e.Node); }

Тут мы вызываем метод NodeExpand, которые мы еще не написали. Это мы сделаем на следующем уроке, а пока все.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: