Попробуйте подключить обработчик к событию DataGridView.CellValueChanged; он срабатывает при изменении любой ячейки в GridView и предоставляет вашему обработчику информацию о конкретной ячейке, которая изменилась. Если ячейка является DataGridViewCheckBoxCell, единственное изменение данных, которое может произойти, это то, что флажок был установлен или снят. Вы можете делегировать эту информацию более конкретному методу-обработчику, либо путем прямого вызова, либо путем вызова вашего собственного события, которое прослушивают другие обработчики.