Làm cách nào để áp dụng tính hợp lệ cho bộ công cụ datepicker WPF? Tôi muốn nó bị lỗi nếu ngày không hợp lệ được chọn và trong một số trường hợp tôi có ngày đến và đi, vì vậy tôi muốn xác thực nó để thấy rằng ngày đến không muộn hơn ngày khởi hành.Xác thực bộ chọn ngày WPF
Trả lời
Có vẻ như một năm trên xác thực bộ chọn ngày was a problem. Dù sao, bây giờ nó hoạt động.
Tôi không phải là một chuyên gia về WPF, bu tôi sẽ cố gắng cung cấp cho bạn một ý tưởng
viết một quy tắc xác nhận
public class DateExpiredRule : ValidationRule
{
public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
DateTime orderDate = (DateTime)value;
return new ValidationResult(orderDate < DateTime.Now, "Please, enter date before Now()");
}
}
sau đó bạn có thể gắn nó vào datepicker
<!-- since validation works hand by hand with binding,
I use hidden datepicker as binding source -->
<WPFToolkit:DatePicker Name="dateProvider" Visibility="Collapsed">
</WPFToolkit:DatePicker>
<WPFToolkit:DatePicker Name="notExpired">
<WPFToolkit:DatePicker.SelectedDate>
<Binding ElementName="dateProvider" Path="SelectedDate" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<local:DateExpiredRule/>
</Binding.ValidationRules>
</Binding>
</WPFToolkit:DatePicker.SelectedDate>
</WPFToolkit:DatePicker>
chỉ định mẫu kiểm soát khi lỗi xác thực xảy ra. Theo mặc định, lỗi xác thực thay đổi màu đường viền. Tôi đã sử dụng chú giải công cụ bổ sung khi chuột bị kiểm soát.
Về 'chọn để Picker' xác nhận.
Tôi biết rằng người ta có thể sử dụng các thuộc tính tùy chỉnh trong quy tắc xác nhận (xem AgeRangeRule trong msdn chẳng hạn)
Có lẽ bạn nên sử dụng tính năng này như thế này
<local:MaxDateRule MaxDate="{Binding ElementName=DepartureDatePicker, Path=SelectedDate" />
nhưng để áp dụng ràng buộc bạn cần làm cho MaxDate DependencyProperty .. bạn chắc chắn nên hỏi một guru;)
Thay vì làm nổi bật, bạn nên cân nhắc việc chặn thay đổi giá trị datepicker (thông qua một số loại sự kiện onpicker 'onchange') và accep hoặc từ chối thay đổi.
- 1. xác thực ngày
- 2. xác thực trường xác thực và không đồng bộ trong WPF
- 3. Bộ chọn ngày trong Android
- 4. Plugin xác thực ngày không có lịch
- 5. Xác thực WPF: Xóa tất cả các lỗi xác thực
- 6. Xác thực Hộp ngày GWT
- 7. Xác thực jQuery nhiều bộ chọn cho bỏ qua
- 8. Jquery datepicker: xác thực ngày tháng/ngày/yyyy
- 9. Làm cách nào để đặt ngày cho bộ chọn ngày?
- 10. Xác thực trường chọn
- 11. Asp.net so sánh trình xác thực để xác thực ngày
- 12. Có thể chọn bộ chọn ngày để trình bày tên năm/tháng/ngày + ngày không?
- 13. Bộ chọn ngày jQuery: Chọn tuần tại một thời điểm
- 14. JQuery ui - bộ chọn ngày, tắt các ngày cụ thể
- 15. Bộ chọn ngày của jQuery Mobile
- 16. ngày + bộ chọn thời gian cho jsf
- 17. kiểm soát bộ chọn ngày trội excel
- 18. Buộc xác thực cột DataGrid (WPF)
- 19. Xác thực Hộp văn bản WPF
- 20. Xác thực WPF khi nhập phím khóa
- 21. Xác thực và vai trò trong WPF
- 22. Xác thực mục nhập ngày thủ công cho tùy chọn jQuery UI Datepicker maxDate
- 23. Xác thực nếu ngày trước ngày hiện tại
- 24. Xác thực tùy chọn. Android
- 25. Xác thực định dạng ngày trong php
- 26. C# Regular Expression để xác thực ngày?
- 27. Cách sử dụng Xác thực Windows trong WPF?
- 28. Làm cách nào để xác thực Ngày MYSQL bằng PHP?
- 29. Bộ chọn ngày jQuery nơi nhập văn bản chỉ đọc
- 30. Android 4.1.1/4.1.2 Bộ chọn ngày Galaxy S3
Cảm ơn bạn rất nhiều vì đã trả lời .. Tôi có một câu hỏi, làm cách nào để xác thực ngày trong 2 người đặt ngày. Ví dụ: tôi có datepicker ngày và datepicker ngày khởi hành. Làm cách nào để tôi xác thực hai điều này để ngày đến luôn nhỏ hơn (trước), ngày khởi hành? – developer