註冊依賴屬性,提示默認值類型不匹配屬性的解決辦法

public static readonly DependencyProperty RichTextBoxWidthProperty;

RichTextBoxWidthProperty = DependencyProperty.Register("RichTextBoxWidth", typeof(double), typeof(TelerikEditor), new PropertyMetadata(713, new PropertyChangedCallback(RichTextBoxWidthPropertyChange)));

上面爲註冊代碼。函數

錯誤提示爲:調用構造函數時,提示:default value does not match type of propertyspa

檢查發現,定義的回調函數 code

        //
        // 摘要: 
        //     使用屬性默認值和回調引用初始化 System.Windows.PropertyMetadata 類的新實例。
        //
        // 參數: 
        //   defaultValue:
        //     應用此 System.Windows.PropertyMetadata 的屬性的默認值。
        //
        //   propertyChangedCallback:
        //     用於爲屬性更改行爲進行調用的回調引用。
        public PropertyMetadata(object defaultValue, PropertyChangedCallback propertyChangedCallback);
其中第一個參數defaultValue爲object對象,而我設置的713默認爲int,因此要修改成:
            RichTextBoxWidthProperty = DependencyProperty.Register("RichTextBoxWidth", typeof(double), typeof(TelerikEditor), new PropertyMetadata((double)713, new PropertyChangedCallback(RichTextBoxWidthPropertyChange)));
相關文章
相關標籤/搜索