カスタムDataGridView
コントロールがあり、そのコントロールにはDataSource を使用しRefreshGrid()
て塗りつぶすメソッドがあります。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();
}
エラーを見つけて、解決策を提案してください。