當您允許網格控件自動生成列時,它將基本上枚舉該對象的屬性併爲每個列創建一個列。無法知道您想將其顯示爲數組值的網格。
您需要從數組中創建一個新對象(例如一個類的可枚舉列表),並使用要作爲列綁定到的屬性。做到這一點的一種快速方法是使用匿名類型,使用LINQ查詢構建。例如:
string[][] Array = new string[100][];
for(int i = 0; i < 100; i++) // Set some values to test
Array[i] = new string[2] { "Value 1", "Value 2" };
dataGridView.DataSource = (from arr in Array select new { Col1 = arr[0], Col2 = arr[1] });
Page.DataBind();
在這裏,我們遍歷數組的所有100個元素。每個元素都是2個字符串的數組。我們從這兩個字符串中創建一個匿名類型。這種類型有兩個屬性:Col1
和Col2
。 Col1
將被設置爲數組索引0,並且Col2
將被設置爲數組索引1.然後,我們將構建網格以匿名類型的枚舉。這將是這個樣子:
當然,你可以定義究竟如何列將通過設置AutoGenerateColumns
爲False被創建,並填充Columns
集合。這可以在你的ASPX文件中以聲明方式完成。
你希望如何看到,信息進入GV? – 2013-03-01 20:18:34
您的XAML對於DataGrid控件的外觀如何? – ryrich 2013-03-01 20:23:12
對於[x] [y]我希望每一行代表[X] ...和列代表[Y],這樣[2] [5]的內容將顯示在數據網格中的第2排,第5列。 – phan 2013-03-01 20:23:57