title: ICustomTypeProvider or DynamicObject
body: <p>I'm looking to bind to a class that exposes its properties dynamically as per the code below. It seems that both ICustomTypeProvider and DynamicObject would work for this. Can anybody explain why I might want to use one over the other?</p>
  
  <pre><code>void CreateDynamicItem()
      {
          var di = new DynamicItem();
          di.AddProperty("Age", 16, typeof(int));
          di.AddProperty("Height", 5.2, typeof(double));
      }
  
  &lt;StackPanel&gt;
      &lt;Slider Value="{Binding Age}" /&gt;
      &lt;Slider Value="{Binding Height}" /&gt;
  &lt;/StackPanel&gt;
  </code></pre>