C#winform 怎么从本地读取多个图片

C#winform 怎么从本地读取多个图片,从本地读取图片存到LIst中。

            Image image = new Image();
            BitmapImage source = new BitmapImage();

第一个显示无法创建实例

建议先存地址,然后当需要读取时,再按二进制读入,文件较多的话,可开多个线程(限制数量)

若要想用控件的形式来用,可以自己设计一个控件,在上面放一个Picture,两个Button,当然若想实现选择图片文件夹话还要加一个选择的button,另外,还要把图片的位置保存到一个变量中,如哈希表,list等 ,通过变量中的路径来实现图片的访问.
只能看上去是翻页的效果,实际上还是一次次的读取

关键代码,希望有帮助:

 string directory = @"d:\imageDown";//这换成你自己的目录
List<Image> ImageHandleList = new List<Image>();
foreach (string myFile in
          Directory.GetFiles(directory, "*.png", SearchOption.AllDirectories))
{
    Image image = new Image();
    BitmapImage source = new BitmapImage();
    source.BeginInit();
    source.UriSource = new Uri(myFile, UriKind.Relative);
    source.EndInit();
    image.Source = source;

    ImageHandleList.Add(image);
}

对.net4.0及后续版本,用:

 var files = Directory.EnumerateFiles("C:\\path", "*.*", SearchOption.AllDirectories).Where(s => s.EndsWith(".mp3") || s.EndsWith(".jpg"));

.net4.0之前版本,用:

 var files = Directory.GetFiles("C:\\path", "*.*", SearchOption.AllDirectories) .Where(s => s.EndsWith(".mp3") || s.EndsWith(".jpg"));

你可以用这里得到的files替换我之前发的例子中foreach对应部分

 foreach (string myFile in files)