web-dev-qa-db-ja.com

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

このクラスがあります

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

そして、このキューストロム制御

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を設定する現在の方法は何ですか

67

Default value for 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));
126
Rohit Vats

私は質問のタイトルのためにここに来ましたが、私のタイプは10進数のデフォルト値で、これで解決しました0.0M https://msdn.Microsoft.com/en-us/library/83fhsxwc.aspx

3
dpineda