Отображение и выбор результатов поиска

207
30 сентября 2017, 19:18

Есть алгоритм поиска, который возвращает List<string> с путями к найденным файлам. Хочется создать окно, в которое будет передаваться результаты и в котором будут создаваться необходимое количество label'ов с путями с кнопки справа от них, по нажатию на одну из которых окно будет закрываться, а выбранный результат помещаться в переменную. Сейчас застрял на динамическом создании label'ов, подскажите как это лучше сделать(чем понятнее, тем лучше) или какие еще варианты можно для этого использовать?

Answer 1

Например с помощью ItemsControl:

<ItemsControl ItemsSource="{Binding Paths}"
              HorizontalContentAlignment="Stretch">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <DockPanel Margin="0,2">
                <Button DockPanel.Dock="Right" Content="Выбрать"
                        Command="{Binding DataCintext.SelectCommand, RelativeSource={RelativeSource FindAncestor, AncestorType=Window}"
                        CommandParameter="{Binding}"/>
                <TextBlock Text="{Binding}"/>
            </DockPanel>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

где Paths - ваш список, SelectCommand - команда, которая размещена в главной VM окна, принимает путь в параметре и записывает его в нужную переменную

READ ALSO
авторизация на C# и MySql

авторизация на C# и MySql

Имеется следующий код:

314
Async-загрузка скрипта в Electron&#39;e

Async-загрузка скрипта в Electron'e

Вопрос новичка в javascript'е и Electron'еПростой пример из урока про асинхронную загрузку скрипта:

305
Разница дат из строки JS

Разница дат из строки JS

Тут я попытался изобразить следующее:

348
Uncaught RangeError: Unsupported time zone specified undefined

Uncaught RangeError: Unsupported time zone specified undefined

Попытка в Хроме вызвать toLocaleString у даты на любой вкладке кроме about:blank падает с ошибкой

497