Tôi nghĩ đây là một vấn đề đơn giản, nhưng tôi không thể tìm thấy bất kỳ thông tin nào trên web. Tôi đang ràng buộc một ListBox để một List
sử dụng BindingSource
như vậy:ListBox không hiển thị các thay đổi đối với DataSource
List<Customer> customers = MyMethodReturningList();
BindingSource customersBindingSource = new BindingSource();
customersBindingSource.DataSource = customers;
customersListBox.DataSource = customersBindingSource;
Bây giờ, khi tôi thêm hoặc xóa khỏi danh sách customers
, tôi ListBox
được cập nhật (ngay cả khi không sử dụng ResetBindings
trên BindingSource
), nhưng nếu tôi thay đổi bất kỳ của các đối tượng khách hàng trong danh sách, nó không. Gọi ResetBindings
không có hiệu lực. Tôi thậm chí còn triển khai BindingList
của riêng mình, nhưng hành vi đó đã không thay đổi.
Lớp Customer
sử dụng các thuộc tính để truy cập và sửa đổi dữ liệu. Nội dung ToString()
của nó được hiển thị trong danh sách.
Tôi đang sử dụng C# trong .Net 2.0.
Bất kỳ ý tưởng nào?
Cảm ơn
Vâng, tôi nghĩ rằng đó là những gì tôi đã làm cuối cùng (tôi đã không có mã ngay bây giờ), nhưng như bạn đã nói, nó bẩn. –
Một vấn đề khác là, nguồn dữ liệu mất cài đặt thời gian thiết kế của nó, ví dụ: Các thuộc tính DisplayMember và ValueMember bị bỏ đặt. – Softec