【发布时间】:2018-11-27 15:19:53
【问题描述】:
首先,我从 Access 数据库中检索图像并用它填充图片框。
con.Open();
string sql = "select Foto from TSP_Data where KayitNo=" + sNo;
OleDbCommand cmdResim = new OleDbCommand(sql, con);
using (OleDbDataReader oku = cmdResim.ExecuteReader())
{
while (oku.Read())
{
byte[] veri = oku["Foto"] as byte[];
using (MemoryStream mstream = new MemoryStream())
{
mstream.Write(veri, 0, veri.Length);
Image fotop = Image.FromStream(mstream);
digerFormFoto.Image = fotop;
}
}
}
将图像检索到图片框没有错误,它工作正常。
但是当我尝试使用带有 savefiledialog 的图片框保存方法保存图像时,它会出现如下错误: GDI+ 中出现一般错误
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Images|*.png;*.bmp;*.jpg";
ImageFormat format = ImageFormat.Png;
if (sfd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string ext = System.IO.Path.GetExtension(sfd.FileName);
switch (ext)
{
case ".jpg":
format = ImageFormat.Jpeg;
break;
case ".bmp":
format = ImageFormat.Bmp;
break;
case ".png":
format = ImageFormat.Png;
break;
}
digerFormFoto.Image.Save(sfd.FileName, format); //digerFormFoto is picturebox
【问题讨论】:
-
如果您在不指定格式的情况下尝试保存图像怎么办?
标签: c# generics picturebox