datagridview with checkbox: How to select rows, when checkbox column is checked? using c#.Net

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
Hi Guys,
I have a datagridview with checkbox column on it. Its is binded via DataSource using SQL. I want the rows, to be selected, when the checkbox is checked.
Here is my code below:
CODE FOR SQL
void GenerateSQL()<br/>
{<br/>
string SQL = "select PictureFolders.ChildID as ID, ProjectID + - + ChildSequence as [Child ID],Name as [Child Name], ";<br/>
SQL += "RequestDate, PrintDate from PictureFolders ";<br/>
SQL += "inner join Children on PictureFolders.ChildID = Children.ID where ID BETWEEN 31 AND 200";<br/>
<br/>
gridQueuedPf.DataSource = null;<br/>
gridQueuedPf.DataSource = dbAccess.ExecuteQuery(SQL, CommandType.Text);<br/>
gridQueuedPf.Columns["ID"].Width = 90;<br/>
gridQueuedPf.Columns["Child ID"].Width = 130;<br/>
gridQueuedPf.Columns["Child Name"].Width = 230;<br/>
gridQueuedPf.Columns["RequestDate"].Width = 170;<br/>
gridQueuedPf.Columns["PrintDate"].Width = 157;<br/>
<br/>
txtNumRecords.Text = gridQueuedPf.Rows.Count.ToString();<br/>
}
CODE FOR GRID POPULATION
void GenerateGrid()<br/>
{<br/>
<br/>
GenerateSQL();<br/>
//ADDING CHECKBOX COLUMN = = = = = = = =<br/>
DataGridViewCheckBoxColumn checkboxColumn = new DataGridViewCheckBoxColumn();
<br/>
checkboxColumn.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;<br/>
gridQueuedPf.Columns.Insert(0, checkboxColumn);<br/>
gridQueuedPf.Columns[0].Width = 30;<br/>
<br/>
#region CHECKBOX HEADER AND COLUMN ADDITIONAL<br/>
<br/>
Rectangle rect = gridQueuedPf.GetCellDisplayRectangle(0, -1, true);<br/>
rect.X = rect.Location.X + (rect.Width / 4);<br/>
rect.Y = 7;<br/>
<br/>
CheckBox checkboxHeader = new CheckBox();<br/>
checkboxHeader.Name = "checkboxHeader";<br/>
checkboxHeader.Size = new Size(18, 18);<br/>
checkboxHeader.Location = rect.Location;<br/>
checkboxHeader.CheckedChanged += new EventHandler(checkboxHeader_CheckedChanged);<br/>
gridQueuedPf.Controls.Add(checkboxHeader);<br/>
#endregion
<br/>
}
CODE FOR THE CELL CLICK EVENT
private void gridQueuedPf_CellClick(object sender, DataGridViewCellEventArgs e)<br/>
{<br/>
DataGridViewCheckBoxCell ch1 = new DataGridViewCheckBoxCell();<br/>
ch1 = (DataGridViewCheckBoxCell)gridQueuedPf.Rows[gridQueuedPf.CurrentRow.Index].Cells[0];<br/>
<br/>
if (ch1.Value == null)<br/>
ch1.Value = false;<br/>
switch (ch1.Value.ToString())<br/>
{<br/>
case "True":<br/>
{
<br/>
ch1.Value = false;<br/>

<br/>
break;<br/>
}<br/>
case "False":<br/>
{<br/>
ch1.Value = true;<br/>

Where should I put the selected cell here?<br/>
break;<br/>
}<br/>
}<br/>
}
HERE IS MY OUTPUT
<img src="http://social.microsoft.com/Forums/getfile/56138/" alt=" <hr class="sig Christian

View the full article
 
Back
Top