anlatıyorum. Ancak o güne kadar incelediğim kaynaklarda sorulmayan basit bir soruyu cevaplamak istedim. Amacım konunun ayrıntılarının çıkmasını sağlamak, okuyucunun aydınlanmasını katkı yapmaktı.
Birden fark ettim ki mevcut bilgilerimle biraz sonra anlatacağım soruyu cevaplıyamıyorum. MSN’de kimler var diye bakınca Levent YILDIZ’ın hızır gibi orada durduğunu fark ettim. Hemen soruyu Levent’e ilettim. Levent hoca kısa sürede sorumun cevabını bulup bana iletti. Aşağıda verdiğim kod ile Resource dosyasındaki resim, ikon veya string tipindeki kaynakları okumak mümkündür.
private void Oku_Click(object sender, EventArgs e)
{
string str = textBox1.Text;
System.Resources.ResourceManager Kaynak;
Kaynak = new ResourceManager ("Application1.Properties.Resources",
Assembly.GetExecutingAssembly());
object nesne = Kaynak.GetObject(str);
if (nesne == null)
MessageBox.Show("okumak istediğiniz kaynak bulunamadı");
else
{
Type tipim = nesne.GetType();
if (tipim.FullName == "System.String")
this.textBox2.Text = nesne.ToString();
if (tipim.FullName == "System.Drawing.Bitmap")
this.pictureBox1.Image = (System.Drawing.Bitmap)nesne;
if (tipim.FullName == "System.Drawing.Icon")
this.Icon = (System.Drawing.Icon)nesne;
}
}
Ne var ki istedim ki kullanıcı Assembly’e gömülü kaynakların adını bilmek zorunda olmasın. Başka bir deyişle mevcut kaynakların adlarını ListBox’ta listelemek istedim.