問題がありますList<Image>
List<Image> _Images = new List<Image>();
int currIndex = 0;
private void btnAdd_Click(object sender, EventArgs e)
{
using (OpenFileDialog dialog = new OpenFileDialog())
{
dialog.Filter = "All Images|*.jpg;*.jpeg;*.png;*.bmp;*.gif";
if (dialog.ShowDialog() == DialogResult.Cancel)
return;
_Images.Add(Image.FromFile(dialog.FileName));
currIndex = _Images.Count - 1;
picBox.Image = _Images[currIndex];
}
}
private void btnNext_Click(object sender, EventArgs e)
{
if (currIndex + 1 >= _Images.Count)
return;
picBox.Image = _Images[++currIndex];
}
private void btnBack_Click(object sender, EventArgs e)
{
if (currIndex - 1 < 0)
return;
picBox.Image = _Images[--currIndex];
}
btnBack_Click
そのリストに2つの画像を追加した後、 [戻る]ボタンを押すとこの例外が発生しました。Parameter is not valid.
最初に画像を追加したときに機能picBox.Image = _Images[currIndex];
し、後でインデックスから画像を取得しようとすると、その例外が発生します。
注: ImageListは使用しませんでした。これは、ご存知のとおり、すべての画像で一定のImageSizeがあるためです。
だから私はそれをどのように機能させるのでしょうか?
更新:
私がに変更し
たとき、それは今働いたList<Image>
List<Stream>
picBox.Image = Image.FromStream(_Images[--currIndex]);