2012-11-15 18 views
6

Khi mã hóa logic xác thực cho hộp văn bản VB .NET, trình xử lý sự kiện nào tốt hơn để sử dụng: Xác thực hoặc Rời khỏi?Tốt hơn để sử dụng Xác thực hoặc Rời khỏi sự kiện để xác thực dữ liệu hộp văn bản?

Từ những gì tôi hiểu, cả hai đều xảy ra cùng một lúc. Tuy nhiên, theo bài viết này: MSDN: Control.Leave Event, sự kiện Rời khỏi xảy ra ngay trước sự kiện xác thực. Điều này ban đầu sẽ làm cho tôi nghĩ rằng tôi muốn sử dụng sự kiện Rời khỏi, vì nó xảy ra đầu tiên.

Tuy nhiên, để có thể đọc mã, bạn nên đặt tất cả mã xác thực trong sự kiện Xác thực.

Vì vậy, lựa chọn nào tốt hơn, cả về hiệu quả lẫn tiêu chuẩn của ngành?

+0

Nếu có thể lưu dữ liệu mà không rời khỏi hộp văn bản, khi đó mã xác nhận của bạn sẽ không được gọi. –

Trả lời

7

Bạn nên luôn luôn sử dụng sự kiện Xác thực, nó được thực hiện để hỗ trợ xác thực. Nếu không ngăn chặn sự thay đổi tiêu điểm thì ít nhất là cho thuộc tính CausesValidation. Mà bạn đã đặt thành False, ví dụ: nút Hủy của hộp thoại. Không có điểm trong việc xác thực bất cứ điều gì khi người dùng quyết định loại bỏ hộp thoại.

2

Sự kiện Validating được thiết kế để xác thực. Nếu văn bản không hợp lệ, hãy đặt e.Cancel = True và tiêu điểm nằm trên hộp văn bản. Leave chỉ là một thông báo.