Ничего не показывает, когда я пытался заполнить Combobox именами файлов.csv
Мне не удалось заполнить выпадающий список именами файлов CSV. Я создал комбинированный список, перетаскивая его из панели инструментов в Microsoft Visual Studio. Я установил имя комбинированного списка на ChooseSampleSheet.
Вот мой код:
private void ChooseSampleSheet_SelectedIndexChanged(object sender, EventArgs e)
{
DirectoryInfo d = new DirectoryInfo(@"C:\Users\UniFlow\Desktop\Europa-master\user interface\Europa design Y\Experiemnt_Gui");//Assuming Test is your Folder
FileInfo[] Files = d.GetFiles("*.csv"); //Getting Text files
ChooseSampleSheet.DataSource = Files;
ChooseSampleSheet.DisplayMember = "Name";
}
Также я попробовал следующий код:
private string path = (@"C:\Users\UniFlow\Desktop\Europa-master\user interface\Europa design Y\Experiemnt_Gui");
private void ChooseSampleSheet_SelectedIndexChanged(object sender, EventArgs e)
{
List<String> Configurations = Directory.EnumerateDirectories(path, "*.exe")
.Select(p => Path.GetFileName(p))
.ToList();
ChooseSampleSheet.DataSource = Configurations;
}
Но ни один из них не работает. Ничего не видно в моем комбинированном списке. Я ожидал увидеть имена файлов CSV. Так что я могу щелкнуть, чтобы открыть выбранный файл впоследствии (не показывать в моем коде).
Люди предложили мне изменить событие. Следующее моё обновление.
private void form4_load(object sender, EventArgs e)
{
DirectoryInfo d = new DirectoryInfo(@"C:\Users\UniFlow\Desktop\Europa-master\user interface\Europa design Y\Experiemnt_Gui");//Assuming Test is your Folder
FileInfo[] Files = d.GetFiles("*.csv"); //Getting Text files
ChooseSampleSheet.DataSource = Files;
ChooseSampleSheet.DisplayMember = "Name";
}
private void ChooseSampleSheet_SelectedIndexChanged(object sender, EventArgs e)
{
}
Тем не менее, в выпадающем списке ничего не видно.
1 ответ
Я не вижу ничего плохого в вашем коде, но думаю, что ваш код не в том месте. SelectedIndexChanged будет выполняться, когда вы выбираете что-то из выпадающего списка. Поскольку ваш раскрывающийся список не был заполнен значениями, вы не можете запустить это событие.
Поместите тот же код в form_load, и вы увидите значения там.
DirectoryInfo d = new DirectoryInfo(@"C:\Users\UniFlow\Desktop\Europa-master\user interface\Europa design Y\Experiemnt_Gui");//Assuming Test is your Folder
FileInfo[] Files = d.GetFiles("*.csv"); //Getting Text files
ChooseSampleSheet.DataSource = Files;
ChooseSampleSheet.DisplayMember = "Name";