I've never really done too much serious skinning, mostly I focus on apps and usually stick to skinning buttons, listboxes and scrollviewers and such. On Friday I ran across the latest results of the skinning competition over at scalenine and got inspired to see how much progress I could make on a more complete skin in Silverlight. I don't have too much raw design skill so I decided to start with cloning an existing skin rather than going off on my own.
I started off with the winning skin of the scalenine skinning competition and cloned a number of control skins including Checkbox, NumericUpDown, Calendar, and ListBox. All of these controls are from either the Silverlight runtime, SDK or Toolbox.
I decided to do all the theming in pure XAML- no code and no images. I used Expression Blend for the whole theming process and was actually pleasantly surprised by how smoothly the whole process went. I started out on TabControl which I had never really themed before, it took a few minutes for me to get into the swing of it but by the time I got through that and Button I was on a roll and quickly did Button, Checkbox, RadioButton and Calendar.
Calendar was the one that surprised me the most- I'm not a big fan (at all) of Silverlight's default Calendar theme and really tore into it. The Calendar went extremely smooth with good visual editing of all of the parts and various calendar modes. I even redid the entire layout to make it resize correctly (my personal pet peeve :))
Overall it took me ~5 hours to get started and crank out the first TabControl, Checkbox, RadioButton, ComboBox, Slider and Calendar controls, not too bad but I'm definitely getting faster now.
The original Flex version can be found here.
The Silverlight version-
Once I started getting the hang of the whole theming thing I decided to go off on my own a little bit more- still keeping with the original design but there were some parts of it that I wanted to simplify and make the theme a little more subtle.
I decided to call this new theme 'Seattle' since it's such a plain gray theme and this weekend was a plain gray Seattle weekend.
The 'Seattle' theme
All of these are still under development (see the TreeView in Seattle- not quite working properly yet...), but my attention span is short and I'm off to write a game now. C'est la vie.