将资源中的图片添加到图片框中

时间:2012-08-30 17:12:13

标签: c#

我遇到了这个问题,显示了我已经添加为资源的图像。我猜我错过了一些重要但我无法找到它的东西。我希望有人能更好地理解我做错了什么。

我在解决方案树中添加了一个.bmp图像,并将该图像的构建操作属性更改为嵌入式资源,但我无法弄清楚如何从管道中调用该图像?

当用户点击按钮时,图像应该发送到图像框,到目前为止我写的代码如下所示:

这只是button_click代码:

     private void button1_Click(object sender, EventArgs e)
    {
        //Show image in the picturebox of selected cake   

        Image image = Image.FromFile(fruitcake.jpg);
        pictbox.Image = image;
        pictbox.Height = 163;
        pictbox.Width = 223;
        choice = 1;
        lblCookiesPerGram.Text = string.Empty;           
    }

任何人都知道我做错了什么,或者我可以在另一场战争中做到这一点?请注意用户点击的4个按钮,每个按钮都有一个图像;)

//问候

2 个答案:

答案 0 :(得分:4)

如果您转到“解决方案 - 属性”窗口并选择“资源”选项卡并通过此管理器添加图像,则可以直接引用图像,如下所示:

Image image = Properties.Resources.fruitcake;

答案 1 :(得分:3)

要从资源中检索图像,您可以执行以下操作:

using (Stream imgStream = Assembly.GetExecutingAssembly()
    .GetManifestResourceStream(
    "MyNamespace.resources.fruitcake.jpg"))
{
    var image = new Bitmap(imgStream);
    pictBox.Image = image;
    pictBox.Height = image.Height;
    pictBox.Width = image.Width;
}
相关问题