[WPF] Minimizzare l'applicazione sull' icon tray

image

image

Per concludere il trittico sulle icone, ho trovato un post che spiega in modo molto semplice come realizzare un'applicazione WPF che si minimizza sull'icon tray.

[WPF] Use icon from resource file as WPF window icon

Proseguendo con le icone, ho provato ad aggiungere il file DataLogger.ico nelle risorse della mia applicazione di data logging ma mi sono subito scontrato con un problema: non è possibile assegnare direttamente la risorsa alla proprietà this.icon perchè quest'ultima è di tipo System.Windows.Media.ImageSource e non di tipo System.Drawing.Icon .

Come al solito, googlando ho trovato un thread su MSDN Forums che spiega come utilizzare una risorsa di tipo icon per impostare l'icona della nostra applicazione WPF, grazie al quale ho scritto questo code snippet:

   1: // Set the application icon
   2: System.Drawing.Icon icon = TPCWare.DataLogger.Receiver.Properties.Resources.DataLogger;
   3: MemoryStream iconStream = new MemoryStream();
   4: icon.Save(iconStream);
   5: iconStream.Seek(0, SeekOrigin.Begin);
   6: this.Icon = BitmapFrame.Create(iconStream);
Dove TPCWare.DataLogger.Receiver è il namespace della mia applicazione WPF e DataLogger.ico è il file creato con l'applicazione di cui al mio precedente post.

Creare il files .ico

image

Una delle cose più noiose, per me, è quella di googlare alla ricerca di icone da usare nelle mie applicazioni. Stufo di di tanto pellegrinare, ho cercato un programma per la generazione di icone e ho scaricato la demo (30 gg) di IconWorkShop.

E' a pagamento (€ 50,49) ma mi ha veramente entusiasmato, tanto che l'ho subito comprato. Chi vuole puo andare direttamente sul sito a vedere cosa fa, io riporto solo un esempio: creare un file .ico (in tutti i vari formati, in un colpo solo) partendo da una immagine.

Immagine di partenza (PNG con sfondo trasparente)

image

Aprire l'immagine di partenza da IconWorkShop (con classico File | Apri) e fare click sul pulsante evidenziato dalla freccetta rossa.

image

Il programma genera tutti i differenti formati che compongono il file .ico .

image

IMHO, è di una comodità pazzesca!

«dicembre»
domlunmarmergiovensab
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910