Controlli di fondo trasparenti nella programmazione PPC
-
27-10-2019 - |
Domanda
Sai che è molto facile impostare lo sfondo trasparente del controllo posizionato sulla parte superiore dell'altro controllo in Winform usando il metodo principale in C# come:
LabelText.Parent = pictureBox1;
Ma non funziona nella programmazione di Windows Mobile. Ho pensato che lì in altro modo per farlo.
Voglio impostare lo sfondo dell'etichetta trasparente, che è posizionato su PictureBox. Nell'immagine sopra il colore posteriore dell'etichetta è già impostato su trasparente ma visualizza l'instato di colore bianco di trasparente.
Soluzione
Puoi ottenere il tipo di trasparenza che stai cercando sulla versione desktop di .NET sovrascrivendo i flag in stile Windows per un controllo. Sostituiresti createparams e attireresti WS_EX_TRANSPAREnt.
Questo non è tuttavia disponibile su CF. La soluzione semplice è quella di sovrascrivere l'evento di verniciatura di PictureBox e disegnare il testo con Graphics.DrawText (). Con l'ulteriore vantaggio che questo è un quantità Più economico di un controllo delle etichette.
Altri suggerimenti
I Winforms non hanno una vera trasparenza. Ci sono alcuni aiutanti per la falsa trasparenza (come BackgroundMage, ecc ...) ma non è molto potente.
Guarda a Controlli mobili Alpha Progetto su codeplex. Dovrebbe risolvere il tuo problema.