Principales respuestas
Datagridview con columnas horas

Pregunta
-
Hola, buenos días, tengo el siguiente datagridview:
En el tengo 2 columnas combobox, una HoraInicio y HoraFin, deseo obtener la diferencia entre horas entre cada fila. Ejemplo:
HORA INICIO HORA FIN RESULTADO
13:00 15:00 2:00
17:00 20:00 3:00
También deseo poder validar si se ingresa como HoraInicio 13:00, que la HoraFin debe ser superior a la HoraInicio.
Adicionalmente, tengo unos botones con su propiedad enabled = false y deseo que se habiliten cuando se haya seleccionado la HoraInicio y la HoraFin de los combobox y por lo menos se haya seleccionado una casilla de los checkbox que se encuentran dentro del mismo datagridview por cada fila.
Cualquier ayuda estaré muy agradecido.
- Editado JCORBETTO miércoles, 13 de diciembre de 2017 12:32 editar
Respuestas
-
hola
>>deseo poder validar si se ingresa como HoraInicio 13:00, que la HoraFin debe ser superior a la HoraInicio, hay algun evento que pueda validar eso.
no recomiendo editar en el grid cuando hay validaciones complejas, seria mejor editar en un form popup
el problea aqui es que evento utilizar, podria ser el CellValidating
How to: Validate Data in the Windows Forms DataGridView Control
en este evento tomarias la row que lanza el evento y tomar los valores de las celdas para ver si pasan la validacion
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Juan MondragónModerator miércoles, 13 de diciembre de 2017 16:38
- Marcado como respuesta JCORBETTO miércoles, 13 de diciembre de 2017 16:49
-
hola
>>deseo obtener la diferencia entre horas entre cada fila.
podrias convertir las horas a datetime para poder restarla
DateTime d1 = Convert.DataTime("13:00"); DateTime d2 = Convert.DataTime("15:00"); TimeSpan t = d2.Subtract(d1); string horas = t.ToString("hh:mm");
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta JCORBETTO miércoles, 13 de diciembre de 2017 16:49
Todas las respuestas
-
hola
>>deseo obtener la diferencia entre horas entre cada fila.
podrias convertir las horas a datetime para poder restarla
DateTime d1 = Convert.DataTime("13:00"); DateTime d2 = Convert.DataTime("15:00"); TimeSpan t = d2.Subtract(d1); string horas = t.ToString("hh:mm");
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta JCORBETTO miércoles, 13 de diciembre de 2017 16:49
-
Hola Leandro, gracias por responder, deseo poder validar si se ingresa como HoraInicio 13:00, que la HoraFin debe ser superior a la HoraInicio, hay algun evento que pueda validar eso.
Adicionalmente, tengo unos botones con su propiedad enabled = false y deseo que se habiliten cuando se haya seleccionado la HoraInicio y la HoraFin de los combobox y por lo menos se haya seleccionado una casilla de los checkbox que se encuentran dentro del mismo datagridview por cada fila.
-
hola
>>deseo poder validar si se ingresa como HoraInicio 13:00, que la HoraFin debe ser superior a la HoraInicio, hay algun evento que pueda validar eso.
no recomiendo editar en el grid cuando hay validaciones complejas, seria mejor editar en un form popup
el problea aqui es que evento utilizar, podria ser el CellValidating
How to: Validate Data in the Windows Forms DataGridView Control
en este evento tomarias la row que lanza el evento y tomar los valores de las celdas para ver si pasan la validacion
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Propuesto como respuesta Juan MondragónModerator miércoles, 13 de diciembre de 2017 16:38
- Marcado como respuesta JCORBETTO miércoles, 13 de diciembre de 2017 16:49