Hola radge
Yo lo hago de la siguiente manera.
La programación de un boton la hago en el
CellContentClick de tu grilla.
Algo asi.
Código:
if (((System.Windows.Forms.DataGridView)(sender)).CurrentCell.ColumnIndex == 2)
{
//Mi boton estan en la columna [2], entoces busco que el clic se haya producido en la columna 2.
//Mi codigo aqui.
}
Asi lo hago en C#.
Saludos.