2013-11-20 4 views
0

Мне нужно добавить список в приложение форм Windows (C#) во время выполнения приложения. проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, сколько ящиков будет добавлено ... Приложение проверит определенный путь для dir, и каждый указанный в нем список должен быть отдельным списком ... есть ли способ сделай это? В настоящее время я нападаю на него, создавая 7 списков и делая их видимыми или невзрачными на основе количества Dir's ... но у них есть шанс более чем на 7 ...динамическое добавление списка во время выполнения

любая помощь очень ценится!

благодаря

+1

Что-то вроде 'this.Controls.Add (новый ListBox());' – Habib

+0

Почему бы вам просто не работать так, как это делает Windows Explorer? Любой пользователь поймет, есть TreeView каталогов слева, список справа. –

ответ

0

Просто расширить на ответ Хабиба, вы бы создать динамический ListBox, popuplate его, а затем добавить его в какой-то контейнер:

ListBox lb = new ListBox(); 
// populate "lb" somehow 
this.Controls.Add(lb); 

Приведенный выше код может быть внутри цикла.

Вам нужно будет явно указать Location() для каждого ListBox, но если вы не добавили их к чему-то вроде FlowLayoutPanel, который автоматически установил бы их для вас. Если вам нужно лучше контролировать, как они расположены, взгляните на использование TableLayoutPanel. Вы можете динамически изменять количество строк/столбцов в нем на основе количества найденных вами каталогов.

Смежные вопросы