使用存储在数据库中的图像路径检索图像并显示在图片框中 C#

Retrieve image and display in picturebox with image path stored in database c#

我将图像路径存储在我的数据库中名为图像的列下,格式为 Images\ac.jpg 该路径已存储在名为 txtImage.Text 的文本框中。我试图在图片框控件中显示它,但出现以下错误:

An unhandled exception of type 'System.IO.FileNotFoundException' occurred in System.Drawing.dll

Additional information: Images\ac.jpg

pbImage.Image = System.Drawing.Image.FromFile(txtImage.Text);

您需要向 PictureBox 提供图像的完整路径。相对路径 Images\ac.jpg 将不起作用。你需要一个像 C:\Images\ac.jpg

这样的绝对路径

如果您的图像文件夹是您的可执行文件所在的位置,您可以尝试创建绝对路径,如下所示

string absolutePath = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), @"Images\ac.jpg");

pbCoffeeImage.Image = System.Drawing.Image.FromFile(absolutePath);

如果您要允许用户输入图片路径,我建议您使用FileDialog控件来确保路径有效并且是绝对路径。

Images\ac.jpg 是一个相对路径,它是相对于您的应用程序的当前工作路径解析的。该错误告诉您,在此位置 (workingPath\Images\ac.jpg) 不存在文件。 我会将其转换为绝对路径,方法是在开头将路径添加到您的图像文件夹。