我需要从textBox中的文本同名的资源加载图像。我的实际代码有2个问题:
- 名称'汇编'在上下文中不存在
- 我不知道如何使用我的字符串(index1)将资源中的图像添加到列表中。
这是我的实际代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Collections;
using System.Globalization;
using System.Resources;
namespace Booster_pack_2
{
public partial class Form3 : Form
{
public Form3()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
List<Image> Images1 = new List<Image>();
ResourceManager rm = new ResourceManager("ResourceReader.MyResource", Assembly.GetExecutingAssembly());
string index1 = textBox1.Text;
pictureBox1.Image = rm.GetObject(index1) as Image;
Images1.Add(Booster_pack_2.Properties.Resources.index1);
}
}
}
答案 0 :(得分:1)
您的代码中需要System.Reflection
才能使用addy2012建议的Assembly
类。至于列表,Properties.Resources
中有一个静态ResourceManager
,请使用它。
private void button1_Click(object sender, EventArgs e)
{
List<Image> Images1 = new List<Image>();
ResourceManager rm = new ResourceManager("ResourceReader.MyResource", Assembly.GetExecutingAssembly());
string index1 = textBox1.Text;
pictureBox1.Image = rm.GetObject(index1) as Image;
Images1.Add((Image)Booster_pack_2.Properties.Resources.ResourceManager.GetObject(index1));
}
如果两个图像相同,则应将图像分配给局部变量并使用它。只是一个建议。