2012-02-05 2 views
1

Im пытается создать динамическую сетку с столбцами, равными количеству дней в месяце (добавит эту функцию позже, после того как я получу сетку) и строки равны количеству объектов внутри список emplist.Динамическое создание сетки с использованием списков

Это мой код.

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), где gridspace - это контейнер на странице. Что-то вроде <div id="gridspace" runat="server"></div> (любой другой контейнер будет делать ...). Или (если это winforms) к панели или другому контейнеру на форме ....

Смежные вопросы