Tengo un problema persistente y puñetero en una aplicación que estoy haciendo en el trabajo. La aplicación es muy simple. Gestiona una base de datos de clientes (tiendas) y las visitas de nuestros comerciales. Ambas tablas, clientes y visitas, se muestran en el mismo formulario, en forma de maestro-detalle, con las visitas en un DataGridView. Vamos, de tutorial de acceso a datos.
El problema es el siguiente: si cancelo una modificación o alta de una visita, se me selecciona el último cliente. Esto se produce si cancelo la operación sin hacer nada o si un control DateTimePicker que tiene la sección de visitas tiene el foco. Si he cambiado a cualquier otro control o bien he modificado/introducido algún dato, al cancelar el alta o modificación se me queda seleccionado el cliente actual.
Ejecutando paso a paso la aplicación no se produce el fallo.
Después de un día rompiéndome la cabeza con ello, he decidido dejarlo de momento. Todavía me quedan otro par de tablas por gestionar en el formulario (productos nuestros en exposición y consumo anual) y es posible que se reproduzca el problema y me dé pistas de por qué ocurre.
Por una parte me gusta programar. Lo encuentro divertido y estimulante. Por otra, me alegro de no dedicarme profesionalmente a esto.