デフォルト値のタイプがプロパティのタイプと一致しません


83

私はこのクラスを持っています

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

回答:


163

Default valueforDPはあなたのタイプと一致しません。

変化する

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
あなたの助けに大いに感謝します
Juan Pablo Gomez

1
フアンを助けてくれてうれしい.. :)
Rohit Vats

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.