2010-01-15 29 views
7

Tôi có hộp văn bản điện thoại và email trên Biểu mẫu Windows mà tôi muốn xác thực khi người dùng rời khỏi trường.Làm thế nào để bắt chước sự kiện onBlur của JavaScript trong Windows Forms?

Khi tôi nhấp đúp vào hộp văn bản trong trình thiết kế biểu mẫu Visual Studio, nó tạo ra sự kiện textchanged. Điều này không hoàn toàn phù hợp khi muốn gọi phương thức xác thực chỉ khi người dùng thực hiện nhập toàn bộ mục nhập, không phải sau mỗi lần gõ phím.

Có cách nào để thực hiện việc này tương tự như onBlur sự kiện trong JavaScript không?

Tôi đã thử MouseLeave, Off Focus và tất cả đều hoạt động như TextChanged.

Làm cách nào để thực hiện điều này?

+0

BTW, ngôn ngữ C# không có 'OnBlur' hoặc bất cứ điều gì giống như nó. Đó là lớp 'System.Windows.Forms.Form' của .NET Framework có chúng. Các phương thức tồn tại cho mọi ngôn ngữ .NET. –

+0

@ Charlie: OP và nhiều người khác dường như không nhận được sự khác biệt giữa ngôn ngữ và khuôn khổ. Ví dụ, bạn sẽ gặp khó khăn trong việc sử dụng JavaScript để tìm kiếm trênBlur. –

+0

Tôi không biết liệu đó có phải là cách mà Java được kiến ​​trúc hay không, nhưng nhiều người dường như nghĩ rằng .NET Framework và C# là một phần của cùng một thứ. Tôi đã nhận được sự hiểu biết về nó để giúp họ hiểu rõ hơn về các câu trả lời mà họ sẽ nhận được, hầu hết trong số đó là từ những người biết rõ hơn. –

Trả lời

7

Hãy thử sự kiện Leave. Điều hướng đến trang Thuộc tính để kiểm soát của bạn.

Bạn chỉ cần nhập tên phương thức bạn sẽ tạo. Nhấn Nhập và Visual Studio sẽ tạo phương thức cho bạn.

enter image description here

enter image description here

+0

Cảm ơn, nhưng nó phản hồi giống như textChanged. – Alex

+0

Tôi đã thay đổi _textChanged thành Leave, tôi đã học về tia chớp trong trình thám hiểm thuộc tính. Tôi chỉ làm việc với một trình soạn thảo văn bản cho các lớp PHP và Javascript của tôi. Tôi thực sự bắt đầu thích Visual Studio. – Alex

+0

Tuyệt vời! Visual Studio là một trình soạn thảo khá mạnh mẽ. –

-1

Có sự kiện OnLostFocus để kiểm soát. Bạn sẽ có thể sử dụng nó.

6

Sự kiện xác thực được thiết kế để thực hiện việc này. Đặt e.Cancel = true nếu bạn không hài lòng với đầu vào. Thành phần ErrorProvider là lý tưởng để cung cấp phản hồi trực quan.

Các vấn đề liên quan