Warum wird DataGridColumn nicht aus DataGridView entfernt?
Ich habe SitteDataGridView
Kontrolle und in dieser Kontrolle gibt esRefreshGrid()
Methode, die füllenDataGridView
unter Verwendung von DataSource. Jetzt versuche ich, ein paar Spalten daraus zu entfernenDataGridView
Nach der DataSource-Bindung, aber nicht in der Lage, diese zu entfernen, werden diese Spalten nicht entfernt, sondern am Ende von DataGridView hinzugefügt, wenn ich sie aufrufeRefreshGrid()
Methode erneut, dann werden diese Spalten entferntDataGridView
. Hier ist Code für die MethodeRefreshGrid()
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);
}
}
}
FordernRefreshGrid()
public Form1()
{
InitializeComponent();
myDataGridView1.RefreshGrid();
}
Bitte finden Sie den Fehler und schlagen Sie mir die Lösung vor.