Read this: http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.cellcontentclick%28v=vs.85%29.aspx
This event occurs when the cell content is clicked. It also occurs when the user presses and releases the SPACEBAR while a button cell or check box cell has focus, and will occur twice for these cell types if the cell content is clicked while pressing the SPACEBAR.
Use this event to detect button clicks for a DataGridViewButtonCell or link clicks for a DataGridViewLinkCell.
For clicks in a DataGridViewCheckBoxCell, this event occurs before the check box changes value, so if you do not want to calculate the expected value based on the current value, you will typically handle the DataGridView.CellValueChanged event instead. Because that event occurs only when the user-specified value is committed, which typically occurs when focus leaves the cell, you must also handle the DataGridView.CurrentCellDirtyStateChanged event. In that handler, if the current cell is a check box cell, call the DataGridView.CommitEdit method and pass in the Commit value.
For more information about handling events, see Consuming Events.
Probably, you need to use another event.