Sedaj, ko imamo osnovno okno našega programa, napišemo še preostanek, kodo, ki se izvede ob določenih dogodkih. Ti dogodki bodo Klik na ukaz v meniju (Izbira slike, Velikost slike, Zapri) in pa klik na gumb V redu ali pa gumb Prekliči an dodatnem okencu. Nekaj dogodkov imamo sicer še povezanih z gradnikom OpenFileDialog, vendar pa imamo tam že določeno zaporedje, ki ga ne bomo spreminjali. Dovolj bo, da bomo ob kliku na gumb Odpri dobili vrnjeno ime datoteke.
Pa začnimo z ukazom Izberi sliko. Kot že povedano, ta uporablja gradnik OpenFileDialog. Glede tega ni kaj veliko razlagati, ime datoteke dobimo tako, da napišemo tale del kode:
if (filePicker.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
string pot = filePicker.FileName;
}
Ko to dobimo, odpremo sliko, ki naj bi se nahajala na tej poti. Ker se lahko zgodi, da kljub končnici ta datoteka ni slika, je dobro, da ta del kode damo v varovalni blok, saj se nam program sicer sesuje.
Sliko (image) nato shranimo v pomnilnik z naslednjo vrstico:
slika = Image.FromFile(pot);
Glede na velikost slike ali pa privzeti vrednosti popravimo dimenzije okna in platna. Če spreminjamo glede na privzeti vrednosti, potem moramo že tukaj narediti spremenjeno kopijo originalne slike z novimi dimenzijami. To dosežemo tako:
Bitmap nova = new Bitmap(dimX, dimY);
using (Graphics graphicsHandle = Graphics.FromImage(nova))
{
graphicsHandle.InterpolationMode = InterpolationMode.HighQualityBicubic;
graphicsHandle.DrawImage(slika, 0, 0, dimX, dimY);
}
platno.BackgroundImage = nova;
Kot vidimo, najprej ustvarimo nov, prazen objekt tipa Image žejene velikosti. Na tega nato s pomočjo interpolacije narišemo originalno sliko. Dobljeno nato nastavimo kot ozadje platna. Enako nato deluje tudi spreminjanje slike; naredimo novo kopijo z drugačnimi dimenzijami, spremenimo velikost okna in platna, ter novo sliko nastavimo za ozadje. Tako imamo precej enostaven pregledovalnik slik. Na naslednji prosojnici lahko vidimo še prikaz uporabe programa.