title: Should I use the Model-View-ViewModel (MVVM) pattern in Silverlight projects?
body: <p>One challenge with Silverlight controls is that when properties are bound to code, they're no longer really editable in Blend. For example, if you've got a ListView that's populated from a data feed, there are no elements visible when you edit the control in Blend.</p>
  
  <p>I've heard that the MVVM pattern, originated by the WPF development community, can also help with keeping Silverlight controls "blendable". I'm still wrapping my head around it, but here are some explanations:</p>
  
  <ul>
  <li><a href="http://www.nikhilk.net/Silverlight-ViewModel-Pattern.aspx" rel="noreferrer">http://www.nikhilk.net/Silverlight-ViewModel-Pattern.aspx</a></li>
  <li><a href="http://mark-dot-net.blogspot.com/2008/11/model-view-view-model-mvvm-in.html" rel="noreferrer">http://mark-dot-net.blogspot.com/2008/11/model-view-view-model-mvvm-in.html</a></li>
  <li><a href="http://www.ryankeeter.com/silverlight/silverlight-mvvm-pt-1-hello-world-style/" rel="noreferrer">http://www.ryankeeter.com/silverlight/silverlight-mvvm-pt-1-hello-world-style/</a></li>
  <li><a href="http://jonas.follesoe.no/YouCardRevisitedImplementingTheViewModelPattern.aspx" rel="noreferrer">http://jonas.follesoe.no/YouCardRevisitedImplementingTheViewModelPattern.aspx</a> </li>
  </ul>
  
  <p>One potential downside is that the pattern requires additional classes, although not necessarily more code (as shown by the second link above). Thoughts?</p>