Я занимаюсь разработкой программы, для которой требуется собственный файловый менеджер / проводник. Это довольно типично: у меня есть пользовательский элемент управления (с именем FileItem), который включает изображение (эскиз) и метку (имя файла).
Проблема, с которой я столкнулся, связана с макетом; Мне он нужен в макете сетки (поэтому я использую Uniform Grid, который его прибивает), точно так же, как Windows Explorer, когда вы находитесь в режиме просмотра значков:
Мне также нужно иметь возможность выбрать файл или несколько файлов и т. Д., Что ListBox отлично справляется. Проблема в том, что я не могу использовать оба.
Итак, я попытался вставить Uniform Grid в ListBox. Макет был отличным, но я не мог выбрать файлы (как будто ListBox там не было).
Быстрый поиск в Google предложил просто использовать ListView, но он не работает хорошо, поскольку имеет фиксированные столбцы и строки (а в программе, над которой я работаю, размер изменится).
Итак, как я могу точно достичь обеих функций ListBox и Uniform Grid?
Изменить (важно): если вам тоже нужен этот вид и вы хотите получить ответ, я действительно рекомендую WrapPanel, а не Uniform Grid. Это автоматически позволит вам динамически изменять количество строк в соответствии с содержимым.