настоящего времени я заселение выпадающего списка с содержимым всех файлов в каталоге, используя этот код:занесение в 2 одномерный список из Directory.GetFiles
string[] filePaths = Directory.GetFiles(@ConfigurationManager.AppSettings["File_Path"]
.ToString(), "*.txt");
if (filePaths == null || filePaths.Length == 0)
{
ddlFiles.Items.Insert(0, new ListItem("NO TEXT FILES CURRENTLY AVAILABLE !"));
}
else
{
ddlFiles.DataSource = filePaths;
ddlFiles.DataBind();
ddlFiles.Items.Insert(0, new ListItem("PLEASE SELECT A TEXT FILE"));
}
Проблема заключается в том, что выпадающий покажет полный путь к файлам. Я просто хочу показать имя файла и расширение. Я полагаю, что могу использовать двумерный список и загружать путь в одно измерение. Затем я мог просто пропустить это измерение и проанализировать все после последнего «\», чтобы получить только имя файла и записать его обратно в другое измерение в этом списке. Это приведет к списку с двумя измерениями, один с путями и один с именами файлов. Затем я мог загрузить выпадающий список из 2-мерного списка, используя путь для DataValueField и имя файла для DataTextField.
Моя проблема в том, что я не могу получить 2-мерный список для загрузки из Directory.GetFiles. Может ли кто-нибудь отправить пример? Кроме того, как конкретно я описываю каждое измерение в списке для загрузки атрибутов Value/Text в раскрывающемся списке?
Заранее благодарю вас за помощь!
Эта часть именно то, что я искал: .select (путь => новый { Путь = путь, Name = Path.GetFileName (путь) }). ToArray(); Спасибо ! – pmcs