什么是非DataTable DataSource的DataGrid MappingName?

时间:2009-05-13 18:04:06

标签: c# .net windows-mobile compact-framework

我能够将.NET 3.5 CF中的DataGrid绑定到List()但我无法通过指定列的宽度来格式化列。下面的代码看起来应该可以工作但不能。我很确定我没有正确设置MappingName,因为所有教程都告诉你将它设置为DataTable的名称,但我没有绑定到DataTable所以我不确定该怎么做。

            grdBatch.DataSource = InventoryItems;

        DataGridTableStyle tableStyle = new DataGridTableStyle();
        tableStyle.MappingName = InventoryItems.ToString();
        DataGridTextBoxColumn tbcName = new DataGridTextBoxColumn();
        tbcName.Width = 400;
        tbcName.MappingName = "SERIAL_ID";
        tbcName.HeaderText = "SERIAL_ID";
        tableStyle.GridColumnStyles.Add(tbcName);
        grdBatch.TableStyles.Clear();
        grdBatch.TableStyles.Add(tableStyle);

grdBatch是一个DataGrid,而InventoryItems是一个POCOS列表(普通的旧C#对象)。

1 个答案:

答案 0 :(得分:15)

更改:

 tableStyle.MappingName = InventoryItems.ToString();

tableStyle.MappingName = InventoryItems.GetType().Name;