如何将图像添加到标签?

时间:2012-10-11 20:52:36

标签: c# image label fromfile

我必须在我的标签上添加图片,但我找不到解决方法如何做到这一点。 我正在尝试使用这个:

        InitializeComponent();
        url = Directory.GetCurrentDirectory() + @"/Cards/cardSkin.png";
        mylabel.Background = new ImageBrush(new BitmapImage(new Uri(url)));

我不知道即使我正在使用这个权利,我只是从别人的项目中复制了我们在课堂上所做的事情。 无论如何,我试图创建Image img = Image.FromFile("YourFile.bmp");,但我不知道为什么,.FromFile不适合我。 你们中的任何人都有另一种方式将标签作为图片(背景)并帮助新手做到这一点? :d

抛出异常:

Error 1 'System.Windows.Controls.Image' does not contain a definition for 'FromFile.

3 个答案:

答案 0 :(得分:5)

这对我有用:

Label ilabel = new Label(); // create a label
Image i = Image.FromFile("image.png"); // read in image
ilabel.Size = new Size(i.Width, i.Height); //set label to correct size
ilabel.Image = i; // put image on label
this.Controls.Add(ilabel); // add label to container (a form, for instance)

答案 1 :(得分:1)

如果您使用的是在表单设计器中创建的标签,请务必将AutoSize设置为false。否则.Width将为0,因为文本为空并且忽略修改.Size

这样的代码可以工作:

label1.Image?.Dispose(); // prevent memory leak
var image = Image.FromFile(@"image.png");
label1.Size = image.Size;
label1.Image = image;

答案 2 :(得分:0)

试试这个

Image img = System.Drawing.Bitmap.FromFile(filename);