2016-07-15 101 views
1

我需要綁定一個類的對象列表,我需要它是internal,因爲它永遠不會在此.cs文件之外使用。將內部對象的列表綁定到DataGridView

internal class DataGridViewItems 
{ 
    internal string Id{ get; set; } 
    internal string Description{ get; set; } 
    internal double Value{ get; set; } 
    internal string Reference {get;set;} 
}; 

有沒有辦法將此綁定到DataGridView?它只有當我把一切Public

+0

簡單:你*不需要它是'internal'。你需要它是'公共'。 –

+0

你介意給我解釋一下嗎?爲什麼需要公開? – SilentRage47

+2

你需要它是公開的,因爲「只有當我把所有東西都公諸於衆時纔有用」。因此,如果你需要它工作,你需要它公開。 –

回答

1

工作是否有綁定這一個DataGridView的方法嗎?

當然 - 讓internal但使性能public。這種方式DataGridView仍然會在創建/綁定列時通過反射來查找公共屬性,但該類不會在程序集外部直接訪問。

我需要是內部的,因爲它永遠不會被用在這個.cs文件之外。

注意internal使得同樣裝配在類的所有類型可見,不只是CS文件。這聽起來像你想要的是一類對於創建/使用它的類是私有的類:

public class MyView 
{ 
    private class DataGridViewItems 
    { 
     public string Id{ get; set; } 
     public string Description{ get; set; } 
     public double Value{ get; set; } 
     public string Reference {get;set;} 
    }; 
} 
+0

設置屬性訪問器是從來沒有使用的「。我不是那個問題雖然.class作爲私人作品,但Resharper給我一個建議獲取屬性與」自動實施 – SilentRage47