Tenemos un par de DateTimePickers en un UserControl personalizado, en un formulario. Son visibles, pero no están habilitados (solo para fines de visualización). Cuando se carga UserControl, a DateTimePickers se le asignan valores de un DataRow que proviene de un DataSet que almacena un solo registro devuelto por un procedimiento almacenado de SQL Server.DateTimePicker muestra la fecha de hoy en lugar de mostrar su valor real
Existe un comportamiento incoherente en el que los usuarios a veces ven la fecha de hoy en lugar de la fecha que se asignó a DateTimePicker. No parece importar si le asigno la fecha Quiero la propiedad .Value o la propiedad .Texto:
txtstart.Value = (DateTime) dr["Group_Start_Date"];
txtend.Text = dr["Term_Date"].ToString();
espero que la de los dos enunciados anteriormente, el uso de la propiedad Value es más apropiado . Pero, en ambos casos, la fecha de hoy se muestra al usuario, independientemente de los valores que estaban en la base de datos. En el caso de txtstart.Value, Visual Studio me muestra que el valor se asignó como se esperaba. Entonces, ¿por qué no muestra esa fecha al usuario en lugar de la fecha de hoy?
Si DateTimePicker emite un valor vacío o nulo, se mostrará la fecha de hoy. – Stewbob
Bueno, si DateTimePicker está * siempre * deshabilitado, ¿por qué no usar un cuadro de texto en su lugar? – abhilash
En realidad los he cambiado a cuadros de texto, ya que no pude determinar por qué había un control deshabilitado allí en primer lugar. Pero el punto permanece. Si asigno un valor a DateTimePicker en el código, ese es el valor que espero ver en tiempo de ejecución. – reverendlarry