得到图片的名称?

时间:2010-12-24 14:57:24

标签: c# winforms image

if(pictureBox4.Image.ToString() == 
    ePRO_Decision_Tool.Properties.Resources.mod_onalertq.ToString())...

如何读取pictureBox(或资源)中加载的图像文件的名称?

7 个答案:

答案 0 :(得分:10)

PictureBox中加载的图像只是一个字节数组, 因此,要找出文件名是什么,必须填写Tag PictureBox属性时加载任何图像。

答案 1 :(得分:4)

Image对象仅包含图像的二进制数据。您可以手动设置Tag的{​​{1}}属性以包含文件名(在创建图像后)。

如果您使用Image方法将图片加载到PictureBox,则会将Load()的{​​{1}}属性更新为文件路径。

然后您可以使用PictureBox进行比较。

MSDN上的

ImageLocation

答案 2 :(得分:1)

我很确定没有办法,Image类不会暴露它来自哪里。

答案 3 :(得分:1)

private void button1_Click(object sender, EventArgs e)
{
    openFileDialog1.FileName = "";
    openFileDialog1.Title = "Images";
    openFileDialog1.Filter = "JPG Image(*.jpg)|*.jpg|BMP Image(*.bmp)|*.bmp";
    openFileDialog1.ShowDialog();
    if (openFileDialog1.FileName.ToString() != "")
    {
        string imagePath = openFileDialog1.FileName.ToString();
        string imagepath = imagePath.ToString();
        imagepath = imagepath.Substring(imagepath.LastIndexOf("\\"));
        imagepath = imagepath.Remove(0, 1);
    }
}

答案 4 :(得分:1)

您可以使用这种方式在图片框中获取图片名称:

System.IO.Path.GetFileName(PictureBox.ImageLocation);

答案 5 :(得分:0)

此方法仅使用PictureBox.Image.Load(Image Path)

加载图片

不直接从资源使用加载图像 PictureBoc.Image = Image.FromFile(Image Path)无法使用加载图片 因为上述方法(Image.Load()除外)使Image.ImageLocation设置为null

PictureBox.Image.Load("Image Path");
string imagepath = PictureBox.Image.ImageLocation.ToString();
                  imagepath = imagepath.Substring(imagepath.LastIndexOf("\\"));
                  imagepath = imagepath.Remove(0, 1);

答案 6 :(得分:-1)

这是一种从c#:

中的图片框中获取图像名称的简单方法
string imgPath = pictureBox1.ImageLocation; 
string nameImage =imgPath.Substring(imgPath.LastIndexOf('\\')+1);