Se utilizziamo il controllo ToggleSwitch all'interno delle nostre applicazioni Metro Style, possiamo notare che il suo colore di background è, di default, quello del tema scelto dall'utente:
Purtroppo, se vogliamo modificare tale colore per adattarlo alla palette utilizzata nell’applicazione, non abbiamo a disposizione alcuna proprietà.
Un modo per intervenire in tal senso è ridefinire tre SolidColorBrush all’interno delle risorse.
In particolare, è sufficiente ridefinire I seguenti Brush:
- <SolidColorBrush x:Key="ToggleSwitchCurtainBackgroundThemeBrush" Color="Red" />
- <SolidColorBrush x:Key="ToggleSwitchCurtainPointerOverBackgroundThemeBrush" Color="Green" />
- <SolidColorBrush x:Key="ToggleSwitchCurtainPressedBackgroundThemeBrush" Color="Yellow" />
Nel dettaglio:
- ToggleSwitchCurtainBackgroundThemeBrush : è il brush utilizzato per il background del toggle attivato:
- ToggleSwitchCurtainPointerOverBackgroundThemeBrush : è il brush utilizzato quando l’utente passa sopra il controllo (con il controllo nello stato On) con il mouse;
- ToggleSwitchCurtainPressedBackgroundThemeBrush : è il brush utilizzato quando l’utente esegue il click con il mouse sul controllo (e questo è nello stato On).
Al limite, per assurdo, potremmo utilizzare anche una ImageBrush per “colorare il nostro ToggleSwitch:
- <ImageBrush x:Key="ToggleSwitchCurtainBackgroundThemeBrush" ImageSource="../Assets/ImmagineSfondo.jpg"></ImageBrush>
l’importante è mantenere l’attributo Key.
Commenti