Tag: datagridtablestyle

如何从绑定到List 或匿名类型的绑定源获取正确的映射名称,以便在DataGridTableStyle上使用?

我正在尝试创建一个DataGridTableStyle对象,以便我可以控制DataGrid的列宽。 我创建了一个绑定到List的BindingSource对象。 实际上,它通过以下方式绑定到通过Linq创建的匿名类型列表(为了清楚我正在做的事情,变量名称已更改): List myList = new List(someCapacity); . …populate the list with query from database… . var query = from i in myList select new { i.FieldA, i.FieldB, i.FieldC }; myBindingSource.DataSource = query; myDataGrid.DataSource = myBindingSource; 然后我创建一个DataGridTableStyle对象并将其添加到datagrid。 但是,它永远不会应用我设置的表样式属性,因为我似乎无法设置正确的myDataGridTableStyle.MappingName属性。 我在谷歌搜索了大约1/2个小时,并且在一堆不同的论坛中一直看到相同问题的链接(字面意思是相同的文字,就像有人刚刚复制并粘贴了这个问题……我讨厌那个……) 。 无论如何,没有任何建议有效,就像那个人在所有其他网站上说的那样。 那么有谁知道我需要设置MappingName属性,以使我的TableStyle实际上正常工作? 我在哪里可以从中获取名称? (它不能为空……只适用于绑定到DataTable或SqlCeResultSet等的BindingSource)。 我认为这可能是一个问题,我使用Linq创建一个匿名的,更专业的对象版本,只有我需要的字段。 我应该尝试将BindingSource直接绑定到List对象吗? 或者甚至可以将DataGrid直接绑定到List对象并完全跳过绑定源。 谢谢 PS – C#,Compact Framework v3.5 更新: […]