我有一個BindingList對象。這些對象包含要通過數據綁定視圖顯示的公共屬性。不幸的是,我無法獲得返回包含對象的字段數據的屬性。就拿下面的人爲的例子:Datagridview和包含對象的屬性
Public Class ChimpDiet
{
public string favoritefood;
}
Public Class Chimpanzee
{
private ChimpDiet diet;
[DisplayName("Chimp's favorite food")]
public string favoritefood
{ get { return diet.favoritefood; } }
[DisplayName("Chimp's nickname")]
public string nickname { get; set; }
public Chimpanzee()
{
diet = new ChimpDiet();
}
}
當我設置黑猩猩的的BindingList作爲在DataGridView的數據源,favoritefood導致錯誤彈出的屬性:發生在DataGridView
以下異常:
System.Reflection.TargetInvocationException:屬性訪問.... 發生以下異常:「對象引用不設置爲一個對象.'.....
M的一個實例確保一個實例總是在容器對象的構造函數中創建,但這不能解決問題。有什麼建議麼?這是網2.0上
p.s.數據由網格顯示,只是這個錯誤不斷彈出,表示引用沒有設置爲實例,即使它顯然是。這必須是一個winforms問題。
UPDATE:將ChimpDiet從一個類更改爲一個結構體將刪除錯誤。 但我需要它是一個班級。這對我來說沒有意義。