Tôi đang theo mẫu M-V-VM cho giao diện người dùng WPF của mình. Tôi muốn treo một lệnh vào sự kiện TextChanged của một TextBox đến một lệnh trong lớp ViewModel của tôi. Cách duy nhất tôi có thể quan niệm để hoàn thành nhiệm vụ này là kế thừa từ việc điều khiển TextBox và triển khai ICommandSource. Sau đó tôi có thể hướng dẫn lệnh được kích hoạt từ sự kiện TextChanged. Điều này có vẻ là quá nhiều công việc cho một cái gì đó mà dường như rất đơn giản.TextBox.TextChanged & ICommandSource
Có cách nào dễ hơn (hơn là phân lớp TextBox và triển khai ICommandSource) để kết nối sự kiện TextChanged với lớp ViewModel của tôi không?
Cảm ơn Sam - đôi khi tôi không thấy các tùy chọn đơn giản; mà trong trường hợp này là có textbox bị ràng buộc vào một thuộc tính chuỗi trong ViewModel của tôi. –
Tôi không nghĩ rằng việc thêm logic vào setter của thuộc tính sẽ hoạt động. Bộ xử lý WPAM XAML sử dụng thuộc tính phụ thuộc trực tiếp thay vì đi qua trình bao bọc thuộc tính. Điều này có nghĩa là setter sẽ không bao giờ được gọi khi UI được cập nhật. (nguồn: http://msdn.microsoft.com/en-us/library/bb613563.aspx) – Greg
Greg, tôi đang đề cập đến Setter của thuộc tính trong ViewModel mà thuộc tính dependency bị ràng buộc, không phải là setter của chính thuộc tính phụ thuộc. –