foreach (string s in new string[]{"ColumnA","ColumnB","ColumnC"}) { dgvActiveBlocks.Columns.Add (new DataGridViewTextBoxColumn() { Name = s }); }>Nice Viv, I like it!! However, you were close, but no cigar. Need to use a List< string > instead of string[]:
>foreach (DataGridViewColumn col in dgvActiveBlocks.Columns) > { > col.Visible = new List<string>() { > "PaymentBlock", > "RaisedBy", > "BlockDescription", > "etc" } > .Contains(col.Name); > } >>
foreach (DataGridViewColumn col in dgvActiveBlocks.Columns) >> { >> col.Visible = new string[] { >> "PaymentBlock", >> "RaisedBy", >> "BlockDescription", >> "etc" } >> .Contains(col.Name); >> }Shorter, but dunno if it's quicker :-}
>>>this.dgvActiveBlocks.DataSource = this.dsBlocks.Tables[0]; >>>>>>
>>>this.dgvActiveBlocks.AutoGenerateColumns = true; >>>>>>
>>>foreach (DataGridViewColumn col in this.dataGridView1.Columns) >>>{ >>> col.Visible = false; >>>} >>>this.dataGridView1.Columns["PaymentBlock"].Visible = true; >>>this.dataGridView1.Columns["BlockDescription"].Visible = true; >>>this.dataGridView1.Columns["RaisedBy"].Visible = true; >>>this.dataGridView1.Columns["RaisedDate"].Visible = true; >>>this.dataGridView1.Columns["RaisedDepartment"].Visible = true; >>>this.dataGridView1.Columns["Status"].Visible = true; >>>>>>
>>>DataGridViewTextBoxColumn[] cols = new DataGridViewTextBoxColumn[6]; >>>cols[0] = new DataGridViewTextBoxColumn(); >>>cols[0].DataPropertyName = "PaymentBlock"; >>>cols[0].HeaderText = "Payment Block"; >>>cols[1] = new DataGridViewTextBoxColumn(); >>>cols[1].DataPropertyName = "BlockDescription"; >>>cols[1].HeaderText = "BlockDescription"; >>>// etc. for the rest of the columns >>>this.dataGridView1.Columns.AddRange(cols); >>>>>>
>>>>foreach (DataRow dr in this.dsBlocks.Tables[0].Rows) >>>>{ >>>> Object[] cells = {dr["PaymentBlock"].ToString(), >>>> dr["BlockDescription"].ToString(), >>>> dr["RaisedBy"].ToString(), >>>> dr["RaisedDate"].ToString(), >>>> dr["RaisedDepartment"].ToString(), >>>> dr["Status"]}; >>>> >>>> this.dgvActiveBlocks.Rows.Add(cells); >>>>} >>>>>>>>