Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Прлистывание директорий, с подпапками (.NET) Добавлено: 16.06.08 22:42  

Автор вопроса:  VoVaN | ICQ: 4921085 
Подскажите пожалуйста, как пролистать нужную директорию, чтобы можно было добавить в treeview и подпапки в этой директории, и все файлы из самой директории, и из ее подпапок? Уровень вложенности может быть любой

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 s12



Вопросов: 24
Ответов: 363
 Профиль | | #1 Добавлено: 17.06.08 00:34
Посмотри вот этот пример:
http://www.vbnet.ru/samples/download.aspx?id=402

Ответить

Номер ответа: 2
Автор ответа:
 ника



Вопросов: 1
Ответов: 111


 Профиль | | #2 Добавлено: 18.06.08 08:36
Могу предложить способ, просто поражающий своей новизной!!!
Надо юзать рекурсию! ;-)

Ответить

Номер ответа: 3
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #3
Добавлено: 18.06.08 11:01
Слушай, а ведь и правда очень ново и свежо!! =)

Ответить

Номер ответа: 4
Автор ответа:
 ника



Вопросов: 1
Ответов: 111


 Профиль | | #4 Добавлено: 18.06.08 11:47
:-))) Я знала, что вы оцените новшество!

Ответить

Номер ответа: 5
Автор ответа:
 __Pavel__



Вопросов: 29
Ответов: 284
 Web-сайт: ммм.сайта.НЕТ
 Профиль | | #5
Добавлено: 18.06.08 19:17
вау... а че это такое!!!??? =)))

Ответить

Номер ответа: 6
Автор ответа:
 Shota



Вопросов: 22
Ответов: 52
 Профиль | | #6 Добавлено: 20.06.08 13:06
сори за С-шарп... в Бейсике суть не меняется.....


        // this._tree - TreeView control
        private void btnScan_Click(object sender, EventArgs e)
        {
            // вызываем заполнение дерева начиная с определенной директории
            this.FillTree(@"C:\Program Files";);
        }
        private void FillTree(string startDirectory)
        {
            this._tree.SuspendLayout();
            this._tree.Nodes.Clear();
            ;DirectoryInfo rootDir = new DirectoryInfo(startDirectory);
            TreeNode rootNode = new TreeNode(rootDir.Name);
            this.FillTree(rootDir, rootNode);
            this._tree.Nodes.Add(rootNode);
            rootNode.Expand();
            this._tree.ResumeLayout();
        }

        private void FillTree(DirectoryInfo parentDir, TreeNode parentNode)
        {
            ;DirectoryInfo[] childDirectories = parentDir.GetDirectories();
            foreach (DirectoryInfo childDir in childDirectories)
            {
                TreeNode childNode = new TreeNode(childDir.Name);
                // вот тут и рекурсия
                this.FillTree(childDir, childNode);
                parentNode.Nodes.Add(childNode);
            }
            // если не хотим отображать в дереве файлы, то отключаем  нижний блок
            {
                FileInfo[] files = parentDir.GetFiles();
                foreach (FileInfo file in files)
                {
                    TreeNode fileNode = new TreeNode(file.Name);
                    parentNode.Nodes.Add(fileNode);
                }
            }
        }

Ответить

Номер ответа: 7
Автор ответа:
 VoVaN



ICQ: 4921085 

Вопросов: 27
Ответов: 38
 Профиль | | #7 Добавлено: 20.06.08 13:25
да-да, всем спасибо, я разобрался уже.
там всего лишь надо использовать My.computer.filesystem.getfiles (или getdirectories)

Ответить

Номер ответа: 8
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #8 Добавлено: 21.06.08 16:05
> VoVaN
Привет!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам