public int UpdateView() { ResetDataGrid(); if (current_view != null) { ArrayList col = new ArrayList(); // reset allow new dg.AllowUserToAddRows = true; current_view.UpdateView(); current_view.dataGrid_Define(dg, col); for (int i = 0; i < col.Count; i++) { if (col[i] is string) { dg.Columns.Add(col[i].ToString(), col[i].ToString()); } else { dg.Columns.Add((DataGridViewColumn)col[i]); } } if (current_view.count > 0) { dg.RowCount = current_view.count; if (dg.AllowUserToAddRows) { dg.RowCount++; } } else { dg.RowCount = 1; } } RowChanged(0); UpdateState(); return(0); }