

Visual C# 2008 - práca so zdrojmi
Chcel by som do projektu pripojiť nejaké obrázky. Teraz to mám tak, že obrázky sú pripojené do projektu, pri kompilácii sa kopírujú k EXE súboru a normálne s nimi pracujem:
image[0] = Image.FromFile("picture.bmp");
Vedel by mi niekto poradiť ako tento obrázok pridať do zdroja (*.resx) a ako s ním potom pracovať, čiže vytiahnuť ho zo zdroja resx do premennej image[0]?
Do zdroja viem obrázky pridať takým neštandardným spôsobom:
1. Vo Form1 vyberiem vlastnosť BackgroundImage
2. Klepnem na ...
3. Vyberiem Project resource file (resources.resx)
4. Klepnem na Ok a viem pridávať obrázky.
Takže, chcel by som vedieť, ako to pridať štandardným spôsobom a ako ich potom v programe zo zdroja vybrať. Môže mi niekto poradiť?
Pokud budou v resource, pak muzes pouzit Image.FromResource() - doufam, ze tam neco takoveho je
Ďakujem za snahu, ale ako pozerám, nie. Najlepšie by sa hodilo asi FromStream(), ale to asi nie.
FromStream je urcite pouzitelne. Takze jeste si najdi praci s resource (to bude zrejme nejaky objekt Resource) a ten bude umet .ToStream()
no dobre, zajtra to okuknem, potom dám vedieť, zatiaľ ďakujem.
Zo zdroja by si mal vediet vytiahnut obrazok pomocou:
a ako pridat? Tu som nieco nasiel: http://msdn.microsoft.com/en-us/library/7k989cfy%2 8VS.80%29.aspx
Ďakujem, pozriem sa na to neskôr, asi až zajtra, lebo teraz mám problém s KeyDown udalosťou, ale to si vyriešim v pohode.
Neviem do toho zapísať názov obrázka a neviem sa k správnemu zápisu preklikať cez MSDN.
Takže do resource som tie obrázky dostal, ale v programe sa k nim ako dostanem? Tento zápis sa mi zdal divný od začiatku a samozrejme ani nie je platný. V MSDN sa neviem preklikať na správny zápis, našiel som len toto:
Keď sa pozrieš na súbor Resources.resx v strome s projektami (Solution Explorer), tak k nemu sa generuje súbor Resources.Designer.cs. Tam uvidíš, ako sa používa ResourceManager na prečítanie dát zo zdroja uloženého v *.resx súbore.
Jednoduchšie je pridať súbor do projektu a nastaviť mu Build Action na Embedded Resource. K obsahu súboru sa potom dostaneš cez metódu GetManifestResourceStream inštancie triedy Assembly. Meno zdroja, ktoré je argumentom tejto metódy, sa skladá z predvoleného menného priestoru a jeho mena (resp. cesty v rámci projektu).