Тип значения по умолчанию не соответствует типу свойства
У меня этот класс
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));
Ответ 2
Я пришел сюда для названия вопроса, но мой тип был десятичным значением по умолчанию, и я решил с этим 0.0M https://msdn.microsoft.com/en-us/library/83fhsxwc.aspx