一个简单的图像列表视图

时间:2011-05-12 14:47:29

标签: wpf listview

我正在尝试创建一个简单的字典绑定图像列表视图,其中键为filename,值为image path

以下是代码

<ListView Grid.Column="2" Grid.Row="3" Height="131" HorizontalAlignment="Left" Margin="6,9,0,0" Name="GenreListView1" VerticalAlignment="Top" Width="375">
    <ListView.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapPanel Orientation="Horizontal"></WrapPanel>
            </ItemsPanelTemplate>
        </ListView.ItemsPanel>
    <ListView.ItemTemplate>
    <DataTemplate>
        <Image Source="{Binding}"></Image>
    </DataTemplate>
</ListView.ItemTemplate>
                    </ListView>

以下是运行时代码:

    Dim maindir As DirectoryInfo = My.Computer.FileSystem.GetDirectoryInfo(CurDir() + "\Icons")
    GenreDictionary.Clear()
    For Each k As FileInfo In maindir.GetFiles()
        If k.Name.EndsWith(".png") Then
            GenreDictionary.Add(k.Name, k.FullName)
        End If
    Next

    'Load Icons to Genre View
    GenreListView1.ItemsSource = GenreDictionary.Values

请指导我如何获取图片。这是一个Windows应用程序。

2 个答案:

答案 0 :(得分:1)

你为什么要用字典?为什么不使用FileNames列表?如果您这样做,那么您的<Image Source="{Binding"} />将起作用。您的代码将如下所示:

Dim maindir As DirectoryInfo = My.Computer.FileSystem.GetDirectoryInfo(CurDir() + "\Icons")

Dim fileList = as new List<string>();

For Each k As FileInfo In maindir.GetFiles()
    If k.Name.EndsWith(".png") Then
        fileList.Add(k.FullName)
    End If
Next

'Load Icons to Genre View
GenreListView1.ItemsSource = fileList

答案 1 :(得分:0)

尝试

<Image Source="{Binding Value}"/>