【发布时间】:2014-01-13 17:57:11
【问题描述】:
我正在 WPF 中创建一个简单的“配对”游戏。我在 MainWindow 上有 12 个图像控件。我需要做的是使用 OpenFileDialog 选择多个图像(可以少于全部 6 个),然后将它们随机放入图像控件中。每张图片应该出现两次。我怎么能做到这一点?我在这里停留了一段时间,目前只有以下代码。我不是在寻求解决方案,我只需要一些关于如何处理这个问题的指示。谢谢。
> public ObservableCollection<Image> GetImages()
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Multiselect = true;
ObservableCollection<Image> imagesList = new ObservableCollection<Image>();
if (dlg.ShowDialog() == true)
{
foreach (String img in dlg.FileNames)
{
Image image = new Image();
image.Name = "";
image.Location = img;
imagesList.Add(image);
}
}
return imagesList;
}
【问题讨论】:
-
基本思路:从对话框中获取文件名,然后将它们两次(!)放入一个列表(我们称之为 fileList)。现在运行一个生成图像的循环。在循环中,生成一个 0 到 fileList.Count-1 范围内的随机数。从 fileList 中获取相应的文件名元素以创建图像,并从 fileList 中删除该元素。当 fileList 为空时,循环结束。
-
会试一试。感谢您的提示。