Stílusok I.
A stílusok szerepe: A témák kialakításának egy nagyon fontos építőköve. Például panelek esetén közös háttérszín. A stílusokra legegyszerűbben úgy érdemes gondolni, hogy azok valójában nem mások, mint tulajdonság halmazok. Fogunk egy köteg közös jellemzőt, és azokat egyetlen stílusba rakjuk. A stílus objektumot helyezzük el erőforrásként. A stílusokat a Silverlightban a Style objektum segítségével lehet definiálni, miközben a TargetType tulajdonságot beállítjuk arra a típusra, amelyre a stílus készül. A stílusok esetében az egyes tulajdonságok beállítása a Setter-ek segítségével történik. Nézzünk erre egy példát is, hogy érthetőbb legyen:
Ha a tulajdonságokhoz tartozó érték komplex és így nem lehet azt egyetlen stringben leírni, akkor a Setter elem Value értéke 1-es, azaz attribútum helyett XML elemként használható. A Style tulajdonságot a FrameworkElement ősosztály definiálja, így például minden vezérlő és panel rendelkezik vele. A stílus alkalmazására nézzünk egy példát :
Stílusok öröklődése: Nem kell mindig minden stílust a nulláról építeni. Számos esetben építkezhetünk valamilyen alapstílusból kiindulva, amelyből később leszármaztatva specifikusabb stílusokat lehet készíteni. A Silverlight 3 óta a Style objektum rendelkezik a BasedOn attribútummal, amely lehetővé teszi a hivatkozást egy ősstílusra, így szolgáltatva közös alapot más stílusok számára.
Ez a stílus rendelkezik, minden olyan tulajdonsággal, amivel a myBorderStyle, de felüldefiniálja a BorderBrush értéket, ami itt most piros szín lesz. Az ősstílus tulajdonságait felülírják a leszármazott stílusok tulajdonságai. Bármely stílus beállítását felüldefiniálja a közvetlenül a vezérlőn definiált, lokálisan meghatározott érték.
A következő alkalommal szintén a stílusokkal fogunk foglalkozni.