2012-02-05 214 views
1

我試圖創建一個動態網格,其中列的數量等於一個月中的天數(將在我得到網格出現後稍後添加該功能)以及等於內部對象數量的行最終名單。使用列表動態創建網格

這是我的代碼到目前爲止。

Grid dategrid = new Grid(); 
dategrid.Width = 400; 
dategrid.HorizontalAlignment = HorizontalAlignment.Left; 
dategrid.VerticalAlignment = VerticalAlignment.Top; 
dategrid.ShowGridLines = true; 
dategrid.Background = new SolidColorBrush(Colors.DimGray); 
List<ColumnDefinition> columnlist = new List<ColumnDefinition>(); 
List<RowDefinition> rowlist = new List<RowDefinition>(); 
for (int i = 0; i < 31; i++) 
{ 
    columnlist.Add(new ColumnDefinition()); 
    dategrid.ColumnDefinitions.Add(columnlist[i]); 
} 
for (int i = 0; i < Control.empList.Count; i++) 
{ 
    rowlist.Add(new RowDefinition()); 
    dategrid.RowDefinitions.Add(rowlist[i]); 
    rowlist[i].Height = new GridLength(45); 
} 

該代碼編譯,但沒有網格出現在窗體上。 我覺得我在這裏錯過了一些真正的基礎,但是不能爲我的生活弄清楚。

回答

0

您的代碼並不顯示你添加的格到頁面的任何地方。到目前爲止,您所展示的只是在存儲器中實例化一個建築物網格。你需要像gridSpace.controls.add(datagrid)這樣的網格空間是頁面上的容器。像<div id="gridspace" runat="server"></div>(任何其他容器都可以......)。或者(如果這是winforms)在表格上的面板或其他容器....