微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 列出异常“参数无效”.

我有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时,我得到了此异常:参数无效.
当我第一次添加图像时,为什么它才起作用picBox.Image = _Images [currIndex];然后当我试图从索引中获取图像时,它给了我那个例外吗?

注意:我没有使用ImageList,因为据我所知,它有ImageSize,它对所有图像都是常量.

那怎么能让它运作起来呢?

更新:
它现在有效,当我改变List< Image>列出<流>

picBox.Image = Image.FromStream(_Images[--currIndex]);

解决方法

更改您的列表<图像>列出<流>

picBox.Image = Image.FromStream(_Images[--currIndex]);

然后它会工作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐