it-swarm.com.ru

Как создать Explorer-подобную папку в браузере?

Используя C # и WinForms в VS2008, я хочу создать файловый браузер, который будет выглядеть и работать как левая панель в Windows Explorer. К моему удивлению, такой элемент управления не поставляется с .NET по умолчанию.

В идеале я хотел бы, чтобы его содержимое было точно таким же, как в Проводнике. Например, в Windows 7 должны отображаться псевдопапки «Избранное» и «Библиотеки». Конечно, я не хочу кодировать специально для каждой версии Windows, если смогу помочь.

Я просмотрел несколько примеров таких элементов управления, но все они свернуты вручную и поэтому не будут работать на 100% так же, как в Проводнике.

Можно ли как-то просто использовать элемент управления Explorer? Или, если нет, получить доступ к дереву элементов, которые оно будет показывать?

30
Thomas

Microsoft предоставляет пошаговое руководство по созданию интерфейса в стиле проводника Windows в C # .

Есть также несколько примеров на Code Project и других сайтах. Непосредственными примерами являются Дерево обозревателя , Мой проводник , Обозреватель файлов и Расширенный проводник файлов , но есть и другие. Дерево Исследователя , кажется, выглядит лучше всего из краткого взгляда, который я взял.

Я использовал поисковый термин windows Explorer tree view C# в Google, чтобы найти эти ссылки.

30
Jeff Yates

Это не так просто, как кажется, реализовать такой контроль. Проводник работает с элементами оболочки, а не с элементами файловой системы (например, панель управления, папка принтеров и т.д.). Если вам нужно реализовать это, я предлагаю взглянуть на функции оболочки Windows по адресу http://msdn.Microsoft.com/en-us/library/bb776426(VS.85).aspx .

1
munissor

Взгляните на Shell MegaPack контрольный набор. Он обеспечивает Windows Explorer, такой как просмотр папок/файлов, с большинством функций и функций, таких как контекстные меню, переименование, перетаскивание, значки, значки наложения, эскизы и т.д.

0
logicnp