Получить битмап из xml - C#
Формулировка задачи:
Есть такой xml файл
И вот такой код
Интересует вот этот кусок Bitmap img = childnode.InnerText; Должно получится Bitmap img = Properties.Resources.fabric_64; Но то, что я получаю из xml - текст. Как в такой ситуации быть?
<?xml version="1.0" encoding="utf-8" ?>
<items>
<item>
<id>0</id>
<name>Предмет 1</name>
<price>100</price>
<bitmap>Properties.Resources.fabric_64;</bitmap>
</item>
void All_items_on_massive()
{
XmlDocument xDoc = new XmlDocument();
xDoc.Load("items.xml");
XmlElement xRoot = xDoc.DocumentElement;
foreach (XmlNode xnode in xRoot)
{
foreach (XmlNode childnode in xnode.ChildNodes)
{
if (childnode.Name == "id")
{
Items.item[i].id = Convert.ToInt32(childnode.InnerText);
}
if (childnode.Name == "name")
{
Items.item[i].name = childnode.InnerText;
}
if (childnode.Name == "price")
{
Items.item[i].price = Convert.ToDouble(childnode.InnerText);
}
if (childnode.Name == "bitmap")
{
Bitmap img = childnode.InnerText;
}
}
}
}
В обычном случае сошло бы мне и так
Bitmap img= new Bitmap(""+childnode.InnerText+"");
если бы в xml был бы прописан путь к файлу. А как, чтобы прям из ресурсов?
Решение задачи: «Получить битмап из xml»
textual
Листинг программы
var name = "Properties.Resources.fabric_64";
name = name.Split(new char[]{'.'}, 3)[2];
var bmp = (Bitmap)Properties.Resources.ResourceManager.GetObject(name);