我有自定义控件DataGridView
,并且在该控件中有使用 DataSourceRefreshGrid()
填充的方法。DataGridView
现在我正在尝试DataGridView
在 DataSource 绑定之后从中删除几列,但无法删除这些列,这些列没有被删除,而是在 DataGridView 的末尾添加,当我RefreshGrid()
再次调用方法时,这些列会从DataGridView
. 这是方法的代码RefreshGrid()
public void RefreshGrid()
{
DataTable _table = AccessConnectionManagers.GetDataTableBySQLQuery("select Colm1,Colm2,Colm3 from TableName");
//Data Source Binding with DataGridView
this.DataSource = _table;
if (!string.IsNullOrEmpty("Colm1"))
{
var _colmArray = GridRemoveColumnName.Split(new char[] { ',', ';' }, StringSplitOptions.RemoveEmptyEntries).Where(a => this.Columns.Contains(a)).Select(a => a).ToArray();
foreach (string colm in _colmArray)
{
//Remove column after Source Binding
this.Columns.Remove(colm);
}
}
}
征集RefreshGrid()
public Form1()
{
InitializeComponent();
myDataGridView1.RefreshGrid();
}
请找出错误并建议我解决方案。