Chúng tôi có một vài DateTimePickers trên UserControl tùy chỉnh, trên Biểu mẫu. Chúng được hiển thị, nhưng không được kích hoạt (chỉ cho mục đích hiển thị). Khi UserControl đang tải, các DateTimePickers được gán giá trị từ một DataRow đến từ một DataSet lưu trữ một bản ghi duy nhất được trả về từ một thủ tục lưu sẵn SQL Server.DateTimePicker hiển thị ngày hôm nay thay vì hiển thị Giá trị thực tế
Có một hành vi không nhất quán trong đó người dùng đôi khi nhìn thấy ngày hôm nay thay vì ngày được gán cho DateTimePicker. Nó dường như không quan trọng cho dù tôi gán ngày Tôi muốn tài sản .Value hoặc tài sản .text:
txtstart.Value = (DateTime) dr["Group_Start_Date"];
txtend.Text = dr["Term_Date"].ToString();
Tôi hy vọng rằng trong hai báo cáo trên, một trong những cách sử dụng các tài sản giá trị gia tăng là phù hợp hơn . Nhưng, trong cả hai trường hợp, ngày hôm nay được hiển thị cho người dùng bất kể giá trị nằm trong cơ sở dữ liệu. Trong trường hợp của txtstart.Value, Visual Studio cho tôi thấy rằng giá trị được gán như mong đợi. Vậy tại sao nó không hiển thị ngày đó cho người dùng thay vì ngày hôm nay?
Nếu DateTimePicker ecnounters một giá trị rỗng hoặc null, nó sẽ hiển thị ngày hôm nay. – Stewbob
Vâng, nếu DateTimePicker là * luôn luôn * vô hiệu hóa tại sao không sử dụng một hộp văn bản thay thế? – abhilash
Thực ra tôi đã chuyển những hộp này sang hộp văn bản vì tôi không thể xác định được tại sao một điều khiển bị vô hiệu hóa có ở vị trí đầu tiên. Nhưng điểm vẫn còn. Nếu tôi gán một giá trị cho một DateTimePicker trong mã, đó là giá trị mà tôi mong đợi để xem trong thời gian chạy. – reverendlarry