Тип значения по умолчанию не соответствует типу свойства

У меня этот класс

public class Tooth
{
    public string Id {get;set;}
}

И этот контроль custrom

public partial class ToothUI : UserControl
{
    public ToothUI()
    {
        InitializeComponent();
    }

    public Tooth Tooth
    {
        get { return (Tooth)GetValue(ToothProperty); }
        set
        {
            SetValue(ToothProperty, value);
            NombrePieza.Text =   value.Id.Replace("_",String.Empty);
        }
    }
    public static readonly DependencyProperty ToothProperty =
        DependencyProperty.Register("Tooth", typeof(Tooth), typeof(ToothUI), new PropertyMetadata(0)); 

}

Моя проблема после добавления Свойство зависимостей зубов, эта ошибка происходит

Тип значения по умолчанию не соответствует типу свойства

Что означает эта ошибка? Каков текущий способ установить этот DP

Ответ 1

Default value для DP не соответствует вашему типу.

Изменить

public static readonly DependencyProperty ToothProperty =
        DependencyProperty.Register("Tooth", typeof(Tooth), typeof(ToothUI),
                                         new PropertyMetadata(0));

к

public static readonly DependencyProperty ToothProperty =
        DependencyProperty.Register("Tooth", typeof(Tooth), typeof(ToothUI),
                                      new PropertyMetadata(default(Tooth)));

Или просто опустите значение по умолчанию для DP:

public static readonly DependencyProperty ToothProperty =
        DependencyProperty.Register("Tooth", typeof(Tooth), typeof(ToothUI));