Tôi có một số ObservableCollection
của các mục được ràng buộc với một điều khiển danh sách trong chế độ xem của tôi.Thêm một loạt các giá trị vào một ObservableCollection hiệu quả
Tôi có một tình huống mà tôi cần thêm một đoạn giá trị vào đầu bộ sưu tập. Tài liệu Collection<T>.Insert
chỉ định mỗi lần chèn dưới dạng hoạt động O (n) và mỗi lần chèn cũng tạo ra thông báo CollectionChanged
. Vì vậy, tôi lý tưởng muốn chèn toàn bộ phạm vi của các mục trong một lần di chuyển, có nghĩa là chỉ có một shuffle của danh sách cơ bản, và hy vọng một thông báo CollectionChanged
(có lẽ là "thiết lập lại").
Collection<T>
không hiển thị bất kỳ phương pháp nào để thực hiện việc này. List<T>
có InsertRange()
, nhưng IList<T>
, rằng Collection<T>
hiển thị thông qua thuộc tính Items
của nó không.
Có cách nào để làm điều này không?
Nếu bạn có một trường ủng hộ cho sở hữu bộ sưu tập - bạn có thể gán một trường hợp mới vào nó và sau đó nâng cao 'OnPropertyChanged' cho bộ sưu tập proeprty tay – sll
liên quan/có thể trùng lặp: http: // stackoverflow.com/questions/670577/observablecollection-doesnt-support-addrange-method-so-i-get-notified-for-each – Adam
+1 nếu 'ObservableCollection' làm cho bạn nghĩ về cơ học lượng tử và thí nghiệm khe đôi. – rfmodulator