2013-12-05 6 views
50

У меня есть этот классТип значения по умолчанию не совпадает с типом свойства

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)); 

} 

Моя проблема после того, как добавить Tooth свойство зависимостей, эта ошибка произошли

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

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

ответ

97

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)); 
+1

Tks много за вашу помощь –

+0

Рад помочь Хуан .. :) –

Смежные вопросы