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