2012-01-18 15 views
12

Tôi đã có một Hộp văn bản wpf và kết nối với sự kiện TextChanged của nó. Vấn đề là sự kiện này chỉ phát sinh khi lấy nét ra khỏi hộp văn bản.Fire TextBox.TextChanged ngay lập tức khi văn bản được nhập vào

Có sự kiện tương tự như TextChanged kích hoạt ngay lập tức khi ký tự được nhập vào hộp văn bản, thay vì khi tiêu điểm thay đổi?

Trả lời

23

Bạn có thể liên kết thuộc tính Text và sử dụng số UpdateSourceTrigger.

UpdateSourceTrigger=PropertyChanged 

Bằng cách đặt thành PropertyChanged, bạn sẽ nhận được thông báo mỗi khi văn bản thay đổi.

+0

Plz giúp đỡ. Tôi đã có cùng một vấn đề, và trên trình gỡ lỗi thuộc tính bị chặn dường như trả lại giá trị chính xác, nhưng hộp văn bản không được làm mới với nó. Trường hợp sử dụng của chúng tôi là chúng tôi từ chối dữ liệu nhập của người dùng và muốn giữ nguyên giá trị trước đó. – ilans

+0

Đây là tính năng compilable -> không có dấu ngoặc kép, như sau: sam

2

@Anron câu trả lời là chính xác nhưng tôi nghĩ rằng nó chỉ hoạt động khi chúng tôi đang làm ràng buộc dữ liệu (sử dụng MVVM).

Từ câu hỏi @thecorp những gì tôi đã hiểu là anh ấy đang cố gắng để nó trong mã đằng sau tập tin.

Bạn có thể tận dụng lợi thế của sự kiện "KeyDown" và "KeyUp" của hộp văn bản hoặc nếu bạn đang sử dụng ràng buộc dữ liệu Aaron anwer sẽ giải quyết vấn đề của bạn.

12

TextChangedlàm kích hoạt ngay khi văn bản được thay đổi.

(Nếu bạn có một ràng buộc đối với Text đó là không điều tương tự, nó là hoàn toàn độc lập từ sự kiện này.)

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