Заполнение listBox с локального ПК - PullRequest
0 голосов
/ 20 февраля 2012

Я хотел бы заполнить свой ListBox любыми элементами, которые есть в указанном пути.

string path = @"C:\users\test\desktop";

Так что, независимо от того, какие элементы есть на моем рабочем столе, в списке должны быть эти элементы.

Я попытался сделать ListBox1.ItemSource = path, но все, что он делает, это записывает путь к списку :(.

Любые предложения или помощь.

Спасибо

Ответы [ 2 ]

1 голос
/ 20 февраля 2012

Вам необходимо передать коллекцию файлов по этому пути в свойство ItemsSource - ListBox не будет читать по пути для вас.Взгляните на этот проект, целью которого является создание проводника файлов в Silverlight.Он должен дать вам несколько советов относительно того, что вам нужно, а также покажет вам, как сделать шаг населения ListBox.

0 голосов
/ 20 февраля 2012

Взгляните на эту статью .В частности, эти разделы:

После настройки свойств проекта откройте файл XAML и добавьте Button, называемый «Read File», и присоедините к нему Click_Event.Мы также добавим ListBox, чтобы мы могли отображать текстовое содержимое внутри него.Вот фрагмент кода того же самого:

<UserControl x:Class="FileAccessDemo.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <StackPanel x:Name="LayoutRoot" Background="White">
        <Button Width="150" Height="26" Content="Read File" Click="Button_Click"/>
        <ListBox x:Name="lstContent"/>
    </StackPanel>
</UserControl>

Теперь нам нужно реализовать логику событий Click для Button.Для этого перейдите к коду, стоящему за файлом, и напишите свою собственную логику, чтобы прочитать любой файл, присутствующий в вашей системе.В нашем примере мы будем использовать класс System.IO.File и читать файл hosts.Затем мы добавим содержимое в наш ListBox.

Вот реализация кода:

private void Button_Click(object sender, RoutedEventArgs e)
{
    string fileContent = File.ReadAllText(@"c:\windows\system32\drivers\etc\hosts");
    lstContent.Items.Add(fileContent);
}

Просто вызовите метод File.ReadAllText() и передайте полный путь к файлу в качестве параметра.Это прочитает содержимое и сохранит его в локальной переменной с именем fileContent.Теперь добавьте контент в наш ListBox.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...