none
dateTimePicker introducir hora RRS feed

  • Pregunta

  • Hola, 

    estoy realizando que al pulsar un botón se me cambie la informacion de un dateTimePicker. 

    He intentado realizar la siguiente sentencia pero me da error del tipo Property or indexer "DateTime.Hour" cannot be assigned to -- it is read only.

    dateTimePicker_horaTest.Value.Hour = 10;

    viernes, 3 de noviembre de 2017 8:37

Respuestas

  • hola

    tienes que asignar el valor completo

    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(10);

    o sea sumas horas y asignas el datetimedel value

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 3 de noviembre de 2017 13:28


  • viernes, 3 de noviembre de 2017 13:38
  • Buenas Noemi,

    Entiendpo que lo que quieres es colocar el datetime a una hora concreta, por lo tanto puedes usar un Timespan para setear la hora concreta que quieres:

    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.Date + new TimeSpan(days: 0, hours: 10, minutes:0,seconds:0)

    Con eso, vas a convertir la hora del día seleccionado en las 10:00:00, si necesitases tambien cambiar minutos y segundos, podrías cambiar el valor de minutes: y seconds:

    Si lo que quieres es sumar (o restart) 10 horas respecto a la actual , puedes usar la propiedad AddHours(double)

    //sumar
    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(10);
    //restar
    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(-10);


    Si tienes dudas nos comentas

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:



    • Editado Jorge TurradoMVP viernes, 3 de noviembre de 2017 13:45
    • Marcado como respuesta an91 lunes, 6 de noviembre de 2017 7:58
    viernes, 3 de noviembre de 2017 8:53

Todas las respuestas

  • Buenas Noemi,

    Entiendpo que lo que quieres es colocar el datetime a una hora concreta, por lo tanto puedes usar un Timespan para setear la hora concreta que quieres:

    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.Date + new TimeSpan(days: 0, hours: 10, minutes:0,seconds:0)

    Con eso, vas a convertir la hora del día seleccionado en las 10:00:00, si necesitases tambien cambiar minutos y segundos, podrías cambiar el valor de minutes: y seconds:

    Si lo que quieres es sumar (o restart) 10 horas respecto a la actual , puedes usar la propiedad AddHours(double)

    //sumar
    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(10);
    //restar
    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(-10);


    Si tienes dudas nos comentas

    Atte


    No olvides votar mi comentario si te ha ayudado y marcarlo como respuesta si ha sido la solución, con eso ayudas a mejorar mi reputación en la comunidad y a identificar la respuesta a la gente que tenga el mismo problema.

    Para obtener una respuesta lo más rápida y concisa posible, te recomiendo:



    • Editado Jorge TurradoMVP viernes, 3 de noviembre de 2017 13:45
    • Marcado como respuesta an91 lunes, 6 de noviembre de 2017 7:58
    viernes, 3 de noviembre de 2017 8:53
  • hola

    tienes que asignar el valor completo

    dateTimePicker_horaTest.Value = dateTimePicker_horaTest.Value.AddHours(10);

    o sea sumas horas y asignas el datetimedel value

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 3 de noviembre de 2017 13:28


  • viernes, 3 de noviembre de 2017 13:38