我对 WPF 有点陌生,但我必须这样做,这需要我很多时间。我一直在寻找解决方案,但有很多替代解决方案,老实说,我大部分都不明白。我有这个 XAML 代码:
<ListView Name="Thumbnails">
<ListView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding}" Height="30" Width="30" Margin="5"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
以及这个代码隐藏:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
DirectoryInfo folder = new DirectoryInfo(Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName) + @"\SlikeSportista\");
FileInfo[] images = folder.GetFiles("*.jpg");
foreach (FileInfo img in images)
{
Thumbnails.Items.Add(img);
}
}
我还在 foreach 循环中尝试了这行代码:
Thumbnails.Items.Add(System.Drawing.Image.FromFile(img.FullName));
在这两种情况下,都添加了项目,但图像没有正确显示,或者根本没有显示。您可以选择它们,并且与文件夹中的元素数量相同,但没有显示。
另一个问题(不太重要的一个)是如何以正方形而不是行显示图像。基本上我希望每行大约有 4 个图像,但现在我每行只有 1 个元素,一直拉伸(虽然我看不到正在显示的内容)。