使用列表动态创建网格

时间:2012-02-05 10:25:28

标签: c# list grid

我试图创建一个动态网格,其列数等于一个月内的天数(将在我出现网格后添加该功能)和行数等于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);
}

代码编译,但表单上没有网格。 我觉得我在这里缺少一些真正基本的东西,但不能为我的生活弄明白。

2 个答案:

答案 0 :(得分:0)

你错过了dategrid.Bind()

答案 1 :(得分:0)

您的代码不会显示您在任何地方向网页添加网格。到目前为止,您所展示的只是在内存中构建网格 。您需要类似gridSpace.controls.add(datagrid)的内容,其中gridspace是页面上的容器。像<div id="gridspace" runat="server"></div>之类的东西(任何其他容器都会......)。或者(如果这是winforms)到表单上的面板或其他容器....