Как отключить навигацию по папкам в элементе управления FileUpload
-
16-09-2019 - |
Вопрос
Как отключить навигацию по папкам во всплывающем окне просмотра файла, которое появляется при нажатии кнопки обзора в элементе управления FileUpload.
В настоящее время всплывающее окно просмотра файла показывает конкретную папку, содержащую подпапки и файлы;Я хочу ограничить пользователя; пользователь не должен иметь возможность просматривать/перемещаться по папкам верхнего уровня.
Решение
Стандартные элементы управления не обеспечивают большой гибкости.Возможно, более специализированный компонент может помочь...
Вероятно, вам придется загрузить в браузер пользователя компонент или плагин, который пользователь разрешает установить, чтобы вы могли получить доступ к его локальной файловой системе и самостоятельно перемещаться по ней.Раньше это делалось с помощью IE/ActiveX в мире Windows, но было/есть много проблем с безопасностью, а также ограничения платформы.
Компонент на основе .NET Сильверлайт Загрузчик файлов.
Я думаю Телерика Контроль загрузки файлов является довольно гибким, и существует множество подобных сторонних компонентов.
Возможно использование Вспышка например, компонент загрузки вложений электронной почты Gmail, концепция показана в этом образце ASP.NET на CodeProject..
Также вы можете рассмотреть возможность Джава апплет на клиенте, например, загрузчик изображений Facebook;для аналогичного компонента разработчика вы можете начать искать что-то вроде Java-загрузчик,
Все эти клиентские решения открыты или предоставляют доступ к исходному коду для помощи в реализации идей, за исключением Telerik.Все решения достаточно повсеместны, чтобы поддерживать несколько браузеров.Каждый компонент позволяет осуществлять обход локальных жестких дисков, используя свой пользовательский интерфейс/технологию.Я предполагаю, что индивидуальный обход или настройка в определенной степени доступны каждому.
Ожидайте, что компонент будет в первую очередь безопасным и, во-вторых, гибким для программиста.
Другие советы
Серверный элемент управления asp.net на самом деле представляет собой просто завернутый HTML-ввод type=file .Проблема, с которой вы столкнулись, не ограничивается ASP.net, и, к сожалению, невозможно повлиять на поведение браузера в вашем приложении.
Вы не можете сделать это с input type=file
но вы можете это сделать, если вместо этого вы можете использовать управление загрузкой файлов на основе флэш-памяти.