powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нет ли примера красивой работы с каталогом
34 сообщений из 34, показаны все 2 страниц
Нет ли примера красивой работы с каталогом
    #33589491
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно пользователям дать возможность на WEB странице просматривать
содержимое папок с подпапками и соответсвенно открывать файлы. Попробовал сделать браузинг средствами IIS6 - криво . Названия папок и файлов с датами плавают (не по колоночкам) .
Может есть готовые скрипты на VB для ASP.NET.
Заранее благодарен
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33589634
Фотография Max Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Друг мой, кто же http-папки через обозреватель смотрит? Смотри через проводник. Проводник тебя устраивает? Там всё по колоночкам.
Max Pro
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33589672
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем тут проводник . Для WEB клиентов .
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33589919
saitoskop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
загляни http://]http://193.108.242.36/monitor/saiter.htm только не злоупотребляй
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590126
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590132
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
финя какая-то, ссылка не нарисовалась




http://surikov.russia.webmatrixhosting.net/default.aspx?page=./examples/file manager/fm
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590229
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторфиня какая-то, ссылка не нарисовалась

to judge - недоделанный regex

ИМХО мне пример 1024 - больше понравился... В первом косячков полным полно - уж извиняюсь за прямоту...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590295
testerьуыеук
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
saitoskop - класс!
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590352
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чегой-то текстов я там не нашел а сайтоскоп ссылка ввобще не грузится
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590385
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это пример


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33590890
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автора сайтоскоп ссылка ввобще не грузится
хе-хе - пробили ресурс наверное - хацкеры подлые...
могу предложить вот такое решение - незнаю подойдёт или нет т.к. файлы не просматриваются, а просто тянуться на клиента... но зато всё по колоночкам ;)
books
vb.net
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33592502
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А примера с текстами-то нету . Похоже придется самому кропать. А времени ...
Как обычно...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33592590
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторМожет есть готовые скрипты на VB для ASP.NET.

Ответ: нет таких - каждый сам выдумывает...
авторА примера с текстами-то нету . Похоже придется самому кропать. А времени ...
Как обычно...
ты так не суетись - скажи для начала - нужно не нужно - понравилось не понравилось - что понравилось - а уж потом будем говорить о сырцах...
P.S. я тут вчера сидел на работе до поздна - вообще состряпал дерево - прикольно получилось (аж самому приятно) - может тоже интересно будет...???
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33592886
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я по твоей ссылке попал на сайт Владимира - это не ты случайно?
А где там пример не понял . Обязательно залогиниться что-ли надо?
Мне как раз и надо отображать папки с поддеревом и чтобы клиент кликал и открывал файлы - главное чтоб внешний вид был приличный ну и может быть фонтиками-цветом немножко раскрасить
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33592912
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторТак я по твоей ссылке попал на сайт Владимира - это не ты случайно?
А где там пример не понял . Обязательно залогиниться что-ли надо?

вот, в тебе просыпается профессионал ;)
конечно залогиниться надо - имя и пароль смотри в предыдущих постах... - я же нехочу почить как ресурс saitoskop ...
Там реализовано не дерево, а таблица - впрочем лучше посмотреть чем услышать...
P.S. код с построением дерева лежит на работе - приду сегодня после обеда - доделаю - положу сюда...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33593019
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вэри-вэри спасибо . Жду.
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33593989
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не самый лучший вариант - при большом количестве файлов и вложенных папок - долго отрисовывается дерево, но коль скоро обещал - придётся выложить...
форма для построения дерева
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
<%@ Page Language="VB" %>
<%@ Import Namespace="System.IO" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  
    Protected rootPath As String = "C:\Documents and Settings\Vladimir\My Documents"
  
    Protected Sub Page_PreLoad(ByVal sender As Object, ByVal e As System.EventArgs)
        If Not Me.IsPostBack Then
            Session("root") = rootPath
            
            Dim rootNode As New TreeNode
            With rootNode
                .ImageUrl = "~/images/buttons/mape.gif"
                .Text = ".."
                .SelectAction = TreeNodeSelectAction.None
            End With
                    
            addNode(Directory.GetDirectories(rootPath), rootNode)
     
            If Directory.GetFiles(rootPath).Length <>  0  Then
                For Each fstr As String In Directory.GetFiles(rootPath)
                    
                    iteminfofile = New FileInfo(fstr)
                                       
                    nnode = New TreeNode
                    With nnode
                        .Text = iteminfofile.Name
                        .ImageUrl = "~/images/buttons/text.gif"
                        .NavigateUrl = "Fail.aspx?fn=" + iteminfofile.ToString.Substring(rootPath.Length, iteminfofile.ToString.Length - rootPath.Length)
                        .Target = "blank"
                    End With
                    
                    rootNode.ChildNodes.Add(nnode)
                Next
            End If
            
            Dim treeview As New TreeView
            With treeview
                .ID = "MyTreeView"
                .ShowLines = True
                .ExpandDepth =  1 
            End With
            
            treeview.Nodes.Add(rootNode)
       
            Me.FindControl("form1").Controls.Add(treeview)
                     
        End If
    End Sub
    
    Protected nnode As TreeNode
    Protected iteminfo As DirectoryInfo
    Protected iteminfofile As FileInfo
   
    Protected Sub addNode(ByVal searchPath() As String, ByRef parentNode As TreeNode)
        
        For i As Integer =  0  To searchPath.Length -  1 
                     
            iteminfo = New DirectoryInfo(searchPath.GetValue(i))
           
            If Directory.GetDirectories(searchPath.GetValue(i)).Length <>  0  Then
                                                       
                nnode = New TreeNode
                With nnode
                    .Text = iteminfo.Name
                    .ImageUrl = "~/images/buttons/mape.gif"
                    .SelectAction = TreeNodeSelectAction.None
                End With
                
                parentNode.ChildNodes.Add(nnode)
                                                                                      
                addNode(Directory.GetDirectories(searchPath.GetValue(i)), parentNode.ChildNodes.Item(i))
                
            Else
                          
                nnode = New TreeNode
                With nnode
                    .Text = iteminfo.Name
                    .ImageUrl = "~/images/buttons/mape.gif"
                    .SelectAction = TreeNodeSelectAction.None
                End With
                
                parentNode.ChildNodes.Add(nnode)
                
            End If
                                  
            If Directory.GetFiles(searchPath.GetValue(i)).Length <>  0  Then
                For Each fstr As String In Directory.GetFiles(searchPath.GetValue(i))
                    
                    iteminfofile = New FileInfo(fstr)
                                       
                    nnode = New TreeNode
                    With nnode
                        .Text = iteminfofile.Name
                        .ImageUrl = "~/images/buttons/text.gif"
                        .NavigateUrl = "Fail.aspx?fn=" + iteminfofile.ToString.Substring(rootPath.Length, iteminfofile.ToString.Length - rootPath.Length)
                        .Target = "blank"
                    End With
                    
                    parentNode.ChildNodes.Item(i).ChildNodes.Add(nnode)
                Next
            End If
        Next
       
    End Sub
   
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
        
        </div>
    </form>
</body>
</html>

форма, которая принимает параметр (физический путь к файлу на диске)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim str As String = Request.QueryString("fn")
        Response.Write(Session("root") + str)
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>
P.S. вот как то так... зараза - как мягкие динамично подгружают содержимое ноды - для меня так и осталось секретом
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594231
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
типо демо версия показанного кода...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594455
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо . Начинаю пробовать.
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594853
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир . Что-то не могу разобраться из какого namespace treenode,treeview берется .
При выполнении кода ругается на treenode,treeview . в SYStem.io я его не нашел . Только в microsoft.web.ui.controls
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594964
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в System.IO его и недолжно быть... Всё правильно microsoft.web.ui.controls - токма в 2005 студии ненадо ничего дописывать - стандартный контрол... Как в 2003 - незнаю, да и проверить сложно - не работаю я с ней под Web...
Но, почему то есть думка (чисто интуитивно), что и там не должно вызывать таких затруднений т.к. и там - стандартный контрол...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594975
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
даже не microsoft.web.ui.controls
а вот так
System.Web.UI.WebControls.TreeNode
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33594976
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
даже не microsoft.web.ui.controls
а вот так
System.Web.UI.WebControls.TreeNode
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33595216
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашел я эти Microsoft.Web.Ui.Controls . Их оказывается в комплекте с VS нет.
Скачал компильнул DLL.
Но проблемка такая пару свойств и методов в твоем примере у Микрос. treeview нету.
В частности прищлось закоментировать
'.SelectAction = .TreeNodeSelectAction.None
'.ExpandDepth = 1

но самое неприятное что страница выглядит так-то есть читать каталог-читает а дерево не строит

.. Apps-CPP Ex03a debug Ex03a.exe Ex03a.ilk Ex03a.pdb Ex03a Debug app.res AssemblyInfo.obj BuildLog.htm Ex03a.Form1.resources Ex03a.pch Form1.obj stdafx.obj vc70.idb vc70.pdb app.aps app.ico app.rc AssemblyInfo.cpp DataSet1.dll DataSet1.h DataSet1.xsd Debug.obj Ex03a.vcproj Form1.cpp Form1.h Form1.resX ReadMe.txt resource.h stdafx.cpp stdafx.h Ex03a.ncb Ex03a.sln Ex03a.suo mfc mfc res mfc.ico mfc.manifest mfc.rc2 mfcDoc.ico Toolbar.bmp MainFrm.cpp MainFrm.h mfc.aps mfc.cpp mfc.h mfc.rc mfc.vcproj mfcDoc.cpp mfcDoc.h mfcView.cpp mfcView.h ReadMe.txt Resource.h stdafx.cpp stdafx.h mfc.ncb mfc.sln mfc.suo WindowsApplication1 WindowsApplication1 bin WindowsApplication1.exe WindowsApplication1.exe.config WindowsApplication1.pdb obj Debug temp TempPE DataSet1.vb.dll WindowsApplication1.exe WindowsApplication1.Form1.resources WindowsApplication1.pdb app.config AssemblyInfo.vb DataSet1.vb DataSet1.xsd Form1.resx Form1.vb WindowsApplication1.vbproj WindowsApplication1.vbproj.user WindowsApplication1.sln WindowsApplication1.suo Apps-CPP.zip CommunityServer Components bin Debug AspNetForums.Components.dll AspNetForums.Components.pdb Release AspNetForums.Components.dll Patch_02.zip Components Avatar.cs BlockedIpAddress.cs Censor.cs Censorship.cs Email.cs EncryptionInfo.cs Exceptions.cs Formatter.cs Forum.cs ForumContext.cs ForumException.cs ForumGroup.cs ForumImage.cs ForumMessage.cs ForumPermission.cs Globals.cs ModeratedForum.cs ModerationAudit.cs ModerationQueueStatus.cs Moderator.cs Post.cs PostAttachment.cs PostSet.cs PrivateMessage
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33595335
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
повторюсь ещё раз
автортокма в 2005 студии ненадо ничего дописывать - стандартный контрол... Как в 2003 - незнаю , да и проверить сложно - не работаю я с ней под Web...

по поводу -
авторНашел я эти Microsoft.Web.Ui.Controls . Их оказывается в комплекте с VS нет.
Скачал компильнул DLL.
Но проблемка такая пару свойств и методов в твоем примере у Микрос. treeview нету.

я тоже уже выразил мысль - treeview - стандартный контрол (VS2005)... соответственно, надо без всяких дополнительных .dll - вот так System.Web.UI.WebControls.TreeNode

P.S. тут меня осенило - откорректировал код (глубину чтения каталогов сократил до минимума) - чисто теоретически должно сократиться время формирования дерева, и, соответственно, время его отрисовки на странице... но, пришла др. беда - для динамичной подгрузки ноды - обрабатывается событие TreeView1_TreeNodeExpanded - что в свою очередь приводит к перезагрузке страницы и выбранный нод пропадает за нижним пределом экрана - что бы к нему вернуться надо прокручивать страницу донизу... надо както якорь прикрутить - подумаю ещё ;))) (AJAX - не помешал бы - но пока х-з как его прицепить к стандартному дереву)

напоминаю: ознакомительная версия находиться здесь
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33596295
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня как раз VS2003 (на 2005 не заработал еще)
поэтому приходится ковыряться.
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33596769
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подвязывай ковыряться с VS2003
и начинай работать с VS2005
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33597139
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати нет ссылочки где можно качнуть 2005
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33597326
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть - но об этом как бы на форуме кричать глупо - попробуй найти меня в частном порядке - поговорим...
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33598395
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автортут меня осенило - откорректировал код (глубину чтения каталогов сократил до минимума) - чисто теоретически должно сократиться время формирования дерева, и, соответственно, время его отрисовки на странице... но, пришла др. беда - для динамичной подгрузки ноды - обрабатывается событие TreeView1_TreeNodeExpanded - что в свою очередь приводит к перезагрузке страницы и выбранный нод пропадает за нижним пределом экрана - что бы к нему вернуться надо прокручивать страницу донизу... надо както якорь прикрутить - подумаю ещё ;))) (AJAX - не помешал бы - но пока х-з как его прицепить к стандартному дереву)

Помощь пришла внезапно ... Вспомнил о существовании MagicAjax и их супер-пупер панелей... Вроде помогло так что теперь почти идеально
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33603187
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отвлекся . Мое мыло pruha@mail.ru
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33614932
pruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft WEB Controls тоже прилично работают.
Ты знаешь расковырял проблему донизу . Все уже кто-то до нас решал . Теперь работает и твой пример с 2 правками о которых я писал и в среде VS, treeview как обычный контрол фигурирует и настраивается .
Если кому интересно проблема решалась народом 2 способами описанными тут.
1. Тут процедура установки и примеры с базой, деревом и XML
http://www.15seconds.com/issue/030827.htm
2. 1 решение с перекомпиляцией контрола
http://forums.asp.net/1217956/ShowPost.aspx
3. самый правильный - сделать все как описано в readme.txt IEWEBControls
c соблюдением иерархии папочек имен ... всего

В любом случае спасибо за код - поучился у умных людей работать с каталогами и деревьями
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33615138
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ любом случае спасибо за код
пожалуйста...

P.S. хотя, на самом деле, код для 2005 студии полный отстой - на днях это понял - после прочтения вот этого http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.treeview.populatenodesfromclient(VS.80).aspx
...
Рейтинг: 0 / 0
Нет ли примера красивой работы с каталогом
    #33615402
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
<%@ Page Language="VB" %>

<%@ Import Namespace="System.IO" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  
    Protected rootPath As String = "физический путь к каталогу на диске"
        
    Protected Sub Page_PreLoad(ByVal sender As Object, ByVal e As System.EventArgs)
             
            Dim rootNode As New TreeNode
            With rootNode
                .Text = ".."
                .Value = ""
                .SelectAction = TreeNodeSelectAction.None
            End With
                    
            FillTreeNode(rootPath, rootNode)
                              
            TreeView1.Nodes.Add(rootNode)                                   
               
    End Sub
                        
    Protected Sub FillTreeNode(ByVal searchPath As String, ByRef parentNode As TreeNode)
                    
        Dim nnode As TreeNode
        Dim iteminfo() As FileSystemInfo = New DirectoryInfo(searchPath).GetFileSystemInfos
       
        For i As Integer =  0  To iteminfo.Length -  1 

            Dim item As FileSystemInfo = iteminfo.GetValue(i)

            If item.Attributes = FileAttributes.Directory Then
                            
                nnode = New TreeNode
                With nnode
                    .Text = item.Name
                    If New DirectoryInfo(item.FullName).GetFileSystemInfos.Length <>  0  Then
                        .PopulateOnDemand = True
                        .SelectAction = TreeNodeSelectAction.Expand
                    End If
                End With
                     
            Else
                              
                nnode = New TreeNode
                With nnode
                    .Text = item.Name & " (" & FormatNumber(New FileInfo(item.FullName).Length /  1024 ,  0 ).ToString & " Kb)"
                    .ImageUrl = "~/images/icons/" + iconFromExtension(item.Extension)
                    If New FileInfo(item.FullName).Extension = ".aspx" Then
                        .NavigateUrl = "ReadFrom.aspx?fn=" + item.FullName.Substring(rootPath.Length, item.FullName.Length - rootPath.Length)
                        .Target = "content"
                    Else
                        .NavigateUrl = "Video.aspx?fn=" + item.FullName.Substring(rootPath.Length, item.FullName.Length - rootPath.Length)
                    End If
                End With
                                         
            End If
                  
            parentNode.ChildNodes.Add(nnode)

        Next
                      
    End Sub 
    
    Protected Function iconFromExtension(ByVal ext As String) As String
        Select Case ext.ToLower
            Case ".wma"
                Return "wmploc.ico"
            Case ".wmv"
                Return "wmploc.ico"
            Case ".aspx"
                Return "mshtml.ico"
            Case Else
                Return "notdefined.ico"
        End Select
    End Function
       
    Protected Sub TreeView1_TreeNodePopulate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs)
        FillTreeNode(rootPath & e.Node.ValuePath, e.Node)
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TreeView ID="TreeView1" runat="server" CollapseImageToolTip=""
            EnableTheming="False" ExpandDepth="1" ExpandImageToolTip="" ImageSet="XPFileExplorer" NodeIndent="15" OnTreeNodePopulate="TreeView1_TreeNodePopulate" PathSeparator="\">
            <NodeStyle Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" HorizontalPadding="2px" NodeSpacing="0px" VerticalPadding="2px" />
            <ParentNodeStyle Font-Bold="False" />
            <HoverNodeStyle Font-Underline="False" BackColor="#E0E0E0" />
            <SelectedNodeStyle BackColor="Gray" Font-Underline="False" HorizontalPadding="0px"
                VerticalPadding="0px" ForeColor="White" />
            <LeafNodeStyle Font-Underline="False" />
        </asp:TreeView>
    </div>
    </form>
</body>
</html>
Вот так (с заточками под свой случай конечно) - может через неделю ещё чего придумаю - но пока, на мой взгляд, это самый оптимальный вариант...
P.S. нехватает только селекта для выбранной ноды, но есть мысли - буду ДУМАТЬ
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Нет ли примера красивой работы с каталогом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]