需要帮助才能使用资源管理器从与 textBox 中的文本同名的资源加载图像
Posted
技术标签:
【中文标题】需要帮助才能使用资源管理器从与 textBox 中的文本同名的资源加载图像【英文标题】:Need help to use resource manager to load an image from resource with same name as text in textBox 【发布时间】:2014-06-22 20:46:01 【问题描述】:我需要从与文本框中的文本同名的资源中加载图像。我的实际代码有 2 个问题:
-上下文中不存在名称“Assembly”
-我不知道如何使用我的字符串 (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);
【问题讨论】:
using System.Reflection;
需要 Assembly
谢谢。但是如何将图像添加到列表中?
【参考方案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));
如果两个图像相同,则应将图像分配给局部变量并使用它。只是一个建议。
【讨论】:
在mscorlib.dll中出现'System.Resources.MissingManifestResourceException'是否正常?以上是关于需要帮助才能使用资源管理器从与 textBox 中的文本同名的资源加载图像的主要内容,如果未能解决你的问题,请参考以下文章
使用 MS Office 图片管理器从 JPEG 图像中裁剪颜色