I've been building quite a bit of Silverlight 2 code and the one thing I'd pass on as a piece of advice is "Build Controls ". Even in situations where I've found myself thinking "Oh, this will just be a lump of XAML" I soon find that approach results in a spaghetti...