Tôi có thể trực tiếp liên kết điều khiển DataGridView của tôi với một danh sách ràng buộc của các đối tượng kinh doanh của tôi bằng cách đặt thuộc tính DataSource. Đối tượng kinh doanh của tôi thực hiện INotifyPropertyChanged, do đó, DGV được cập nhật khi một mục mới được thêm vào danh sách ràng buộc hoặc một hiện tại được cập nhật.Lợi ích của việc sử dụng một bindingsource với danh sách ràng buộc <business obj> làm nguồn dữ liệu là gì?
Đối với việc xử lý các bản ghi duy nhất, tôi có thể ràng buộc đối tượng kinh doanh của mình với hộp văn bản và các điều khiển có liên quan khác.
Tôi cũng có thể xuất phát từ BindingList và tạo ra một lớp CustomBindingList để thực hiện phương pháp cần thiết của IBindable, như được giải thích trong các liên kết dưới đây: http://msdn.microsoft.com/en-us/library/aa480736.aspx
người Ngoài ra, tôi đã thấy khuyên bạn sử dụng một BindingSource. Datasource của BindingSource là đối tượng kinh doanh và DataSource của DGV là BindingSource.
Trong mọi trường hợp, dựa trên một BindingSource không cung cấp cho tôi:
- Filtering (lọc không hoạt động). Việc triển khai cần được tôi cung cấp.
- Sắp xếp và Tìm kiếm không hoạt động. Việc triển khai cần được tôi cung cấp.
Vì vậy, tại sao phương pháp tiếp cận BindingSource được đề nghị?
Ảnh rộng hơn: Mới đối với khái niệm OOPS và C#. Làm việc với các ứng dụng Cơ sở dữ liệu. Winforms. Cho đến nay chỉ sử dụng phương pháp DataSet/DataTable. Bây giờ cố gắng tạo và sử dụng các lớp tùy chỉnh của riêng tôi.
Thường có biểu mẫu Chính/Chi tiết. Khi tôi nhấp vào một hàng Chi tiết trong DGV, tôi muốn chỉnh sửa bản ghi đó trong một cửa sổ riêng biệt. Vì vậy, tôi cần phải có được một xử lý trên mục danh sách đại diện bởi hàng đó trong DGV. Cố gắng tìm một giải pháp cho điều đó đã mang tôi đến điểm này và nghi ngờ này.
Với những gì tôi muốn làm, cách tiếp cận nào tốt hơn và tại sao?
Một số con trỏ ở đây sẽ thực sự hữu ích vì tôi rất mới mẻ với điều này.
Bản sao có thể có của [C# DataGridView.DataSource khác biệt giữa việc sử dụng BindingSource và không] (http://stackoverflow.com/questions/4433281/c-sharp-datagridview-datasource-difference-between-using-bindingsource-and-not) –