Problemas solucionadoss!!! muchas gracias por su ayuda!!! :D gracias a sus consejos pude dar con la solución! :D :D
Quizás el código no es como lo haría un programador con experiencia pero cumple con su función.
Para el próximo que tenga el mismo problema o quiera hacer algo parecido primero explico lo que me pasaba:
Como en un principio mencioné, no podía almacenar el valor de un checkbox ubicado en el grid en la tabla debido a que los registros los guardaba en un cursor y no sabía qué código debía escribir para que hiciera esto. Para solucionar este problema decidí poner la propiedad RecordSourceType de mi grid en 0 (Tabla) para que el valor del check se almacene automáticamente en la tabla "Productos" sin necesidad de escribir un código. Pero esto me trajo un problema, y es el que mencioné luego:
"al hacer click en una fila, supongamos en el campo producto el txtproducto se llena con el valor, pero los demás textbox no lo hacen, al igual que al hacer click en el campo idproducto, el txtidproducto se llena con ese valor, pero los demás no, y hasta el punto que tengo un id de un producto en txtidproducto y el nombre de otro en el txtproducto".
Este era el código:
WITH thisform.pgfABMProductos.pgModificar
.txtIdProducto.Value = productos.idproducto
.txtProducto.Value = productos.producto
.cmbCategoria.Value = productos.categoria
.txtPrecio_Compra.Value = productos.precio_compra
.txtPrecio_Venta.Value = productos.precio_venta
.spnCantidad.Value = productos.stock
ENDWITH
El código creo yo que no está mal en un principio pero al trabajar directamente con la tabla funcionaba de esa manera...
Por esta razón decidí volver a crear un cursor, ya que con éste al hacer click en cualquier campo del registro se llenan automáticamente todos los textbox sin ningún problema. Este es el código:
WITH thisform.pgfABMProductos.pgModificar
.txtIdProducto.Value = prods.idproducto
.txtProducto.Value = prods.producto
.cmbCategoria.Value = prods.categoria
.txtPrecio_Compra.Value = prods.precio_compra
.txtPrecio_Venta.Value = prods.precio_venta
.spnCantidad.Value = prods.stock
ENDWITH
*Como ven es el mismo código solo que en vez de sacar los datos directamente de la tabla lo hago desde el cursor...
Decidí poner manos a la obra para poder dar con la solución planteada al principio usando este cursor, Gracias a su ayuda pude lograrlo.
Este es el código:
SELECT prods
REPLACE prods.eliminar WITH this.Value
SELECT productos
REPLACE productos.eliminar WITH prods.eliminar FOR productos.idproducto = prods.idproducto
SELECT prods
thisform.dgvProductos.Refresh()
Dejo el código de mi botón Modificar también por las dudas :D
SELECT prods
REPLACE prods.producto WITH thisform.pgfABMProductos.pgModificar.txtProducto.Value
REPLACE prods.precio_compra WITH thisform.pgfABMProductos.pgModificar.txtprecio_compra.Value
REPLACE prods.precio_venta WITH thisform.pgfABMProductos.pgModificar.txtprecio_venta.Value
REPLACE prods.stock WITH thisform.pgfABMProductos.pgModificar.spncantidad.Value
SELECT productos
REPLACE producto WITH prods.producto FOR prods.idproducto = productos.idproducto
REPLACE productos.idcategoria WITH thisform.pgfABMProductos.pgModificar.cmbcategoria.ListIndex FOR prods.idproducto = productos.idproducto
REPLACE precio_compra WITH prods.precio_compra FOR prods.idproducto = productos.idproducto
REPLACE precio_venta WITH prods.precio_venta FOR prods.idproducto = productos.idproducto
REPLACE stock WITH prods.stock FOR prods.idproducto = productos.idproducto
SELECT prods
thisform.dgvProductos.Refresh()