【问题标题】:Initial image with constructor带有构造函数的初始图像
【发布时间】:2015-10-21 06:45:14
【问题描述】:

我创建了一个类“Drink”

饮料有两个变量

一个是饮品名称,另一个是饮品图片

public class Drink
{
    public string name {get; set; }
    public Image pic {get; set; }
}

并初始化它。

List<Drink> ex = new List<Drink>
{
   new Drink { name = "juice", pic = "Assets/juice.png" },
   new Drink { name = "water", pic = "Assets/water.png" }
};

但是图片的路径不对,怎么给每个图片设置?

更新: error message

【问题讨论】:

  • 你的意思是“但是图片的路径是错误的”,它是怎么回事?我敢打赌你会得到一个编译器错误,如果你是这样,你可以将该错误作为对你的问题的编辑。
  • 您的属性是 Image 但您正在使用字符串进行初始化。
  • @ScottChamberlain 抱歉,英语不是我的母语,我想将文件设置为 pic,我认为“Assets..”是一条路径,所以我说“路径错误”跨度>

标签: c#


【解决方案1】:

在您的 Drink 类中,pic 属性的类型为 Image,但您分配的是 string,它应该是:

List<Drink> ex = new List<Drink>
{
   new Drink { name = "juice", pic = Image.FromFile("Assets/juice.png") },
   new Drink { name = "water", pic = Image.FromFile("Assets/water.png") }
};

检查msdn 上的Image.FromFile 方法。

【讨论】:

【解决方案2】:

您的要求并不完全清楚,但您需要在初始化程序中传递Image,而不是string。在下面的示例中,Bitmap 派生自 Image

List<Drink> ex = new List<Drink>
{
   new Drink { name = "juice", pic = new Bitmap("Assets/juice.png") },
   new Drink { name = "water", pic = new Bitmap("Assets/water.png") }
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-17
    相关资源
    最近更新 更多