title: WPF Designer and Binding to Dependency Property problem
body: <p>I have a problem updating the WPF Designer when binding to custom dependency properties. </p>
  
  <p>In the following example, I create a simple Ellipse that I would like to fill with my custom MyAwesomeFill property. The MyAwesomeFill has a default value of a Yellow SolidColor brush.</p>
  
  <p>The problem is that in the control form of the designer I cannot see the default fill of the ellipse (Yellow), instead the ellipse is filled with SolidColor (#00000000). However, when I run the application everything works PERFECTLY.</p>
  
  <p>Do you have any ideas why this may be happenning?</p>
  
  <p>Thanks.</p>
  
  <p>Here's the code that I use:</p>
  
  <p>XAML:</p>
  
  <pre><code>&lt;UserControl x:Class="TestApplication.MyEllipse"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      Height="300" Width="300"&gt;
      &lt;Grid&gt;
          &lt;Ellipse Stroke="Black" StrokeThickness="5" Fill="{Binding MyAwesomeFill}"&gt;&lt;/Ellipse&gt;
      &lt;/Grid&gt;
  &lt;/UserControl&gt;
  </code></pre>
  
  <p>C#:</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  using System.Windows;
  using System.Windows.Controls;
  using System.Windows.Data;
  using System.Windows.Documents;
  using System.Windows.Input;
  using System.Windows.Media;
  using System.Windows.Media.Imaging;
  using System.Windows.Navigation;
  using System.Windows.Shapes;
  
  namespace TestApplication
  {
      public partial class MyEllipse : UserControl
      {
          #region Dependency property MyAwesomeFill
          //Define and register dependency property
          public static readonly DependencyProperty MyAwesomeFillProperty = DependencyProperty.Register(
              "MyAwesomeFill",
              typeof(Brush),
              typeof(MyEllipse),
              new PropertyMetadata(new SolidColorBrush(Colors.Yellow), new PropertyChangedCallback(OnMyAwesomeFillChanged))
          );
  
          //property wrapper
          public Brush MyAwesomeFill
          {
              get { return (Brush)GetValue(MyAwesomeFillProperty); }
              set { SetValue(MyAwesomeFillProperty, value); }
          }
  
          //callback
          private static void OnMyAwesomeFillChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
          {
              MyEllipse m = (MyEllipse)obj;
              m.OnMyAwesomeFillChanged(e);
          }
          #endregion
  
          //callback
          protected virtual void OnMyAwesomeFillChanged(DependencyPropertyChangedEventArgs e)
          {
          }
  
          public MyEllipse()
          {
              InitializeComponent();
  
              DataContext = this;
          }
  
      }
  }
  </code></pre>