我正在开发一个包含DataGrid的.NET Compact Framework 3.5应用程序。我使用设计器创建了一个BindingSource,并添加了bindingsource作为datagrid的源代码。它会自动为我的源对象类型的每个合适属性创建列,但我不想显示所有属性。
如何指定要显示的列和要隐藏的列?我尝试使用datagrid的TableStyles属性(在代码和设计器中),似乎没有任何影响。
答案 0 :(得分:3)
这对我不起作用,因为TableStyles
控件的DataGrid
集合在您指定的位置为空,并且在添加DataGridTableStyle
集合之前一直保持为空。
使用您的建议为MappingName
属性设置正确的值,我通过创建和添加一个新的DataGridTableStyle
对象来实现所需的结果,该对象仅包含{{1}中所需的公共字段}}
DataGrid
答案 1 :(得分:1)
想出来。我必须在InitializeComponent()
:
myDataGrid.TableStyles[0].MappingName = myBindingSource.GetListName(null);
然后我可以更改datagrid的TableStyles
属性,以便根据需要修改显示的列。