2011-08-10 46 views
1

我有一個「id」依賴屬性的依賴屬性聲明:錯誤類型長

public long Id 
    { 
     get { return (long)GetValue(IdProperty); } 
     set { SetValue(IdProperty, value); } 
    } 
    public static readonly DependencyProperty IdProperty = 
     DependencyProperty.Register("Id", typeof(long), 
     typeof(Component), new PropertyMetadata(-1)); 

「分量」是一個用戶控件有「身份證」。

當我運行應用程序它給了我一個exeption:

型「System.TypeInitializationException」未處理的異常發生在PresentationCore.dll中

附加信息:爲「MY-的類型初始值。組件'拋出一個異常。

如果我將類型「long」更改爲「int」,一切正常。 問題是什麼?我不能創建類型爲「long」的依賴屬性?

謝謝你的幫助。

回答

4

嘗試的默認值鑄造長:

new PropertyMetadata((long)-1); 
+0

非常感謝你,它的工作。我不知道默認類型是否爲int,如果沒有被轉換。非常感謝您的快速回復 – Youssef

4

嘗試使用後綴L,即:-1L

+0

這也適用。 Ty爲後綴信息 – Youssef