如何在将C#位图添加到图片框之前检查它是否有效

时间:2010-01-29 17:00:15

标签: c# image bitmap picturebox

如何在将C#System.Drawing.Bitmap图片添加到图片框之前检查它是否有效?

3 个答案:

答案 0 :(得分:3)

这很简单。如果您可以在将图像分配到图片框之前加载图像,那么您已经充分证明图像有效并且用户有需要查看的内容。 GDI +图像解码器非常仔细地检查文件内容。因此:

    private void button1_Click(object sender, EventArgs e) {
        if (openFileDialog1.ShowDialog(this) != DialogResult.OK) return;
        try {
            Bitmap bmp = new Bitmap(openFileDialog1.FileName);
            if (pictureBox1.Image != null) pictureBox1.Image.Dispose();
            pictureBox1.Image = bmp;
        }
        catch (Exception ex) {
            MessageBox.Show(ex.Message, "Could not load image");
        }
    }

答案 1 :(得分:2)

  1. 定义“有效”

  2. 写一个valdation函数

  3. 在图片上调用

  4. 如果通过,请加载图片,否则

答案 2 :(得分:1)

也许您应该检查'System.Drawing.Bitmap'类的'RawFormat'属性,如MSDN上显示的here。如果图像为空,那将抛出一个异常,你可以在这种情况下捕获它。