什么是非DataTable DataSource的DataGrid MappingName?
我能够将我在.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#对象)。
更改:
tableStyle.MappingName = InventoryItems.ToString();
至
tableStyle.MappingName = InventoryItems.GetType().Name;