A List<>, belirli bir türdeki öğelerin birkaç yardımcı işlevle (örneğin: sıralama) otomatik olarak yeniden boyutlandırılan dizisidir. Bu sadece verilerdir ve modelinizdeki bir dizi nesne üzerinde işlemleri çalıştırmak için kullanmanız muhtemeldir.
A BindingList<>, IBindingListarayüzü uygulayan, yazılı bir listenin veya bir koleksiyonun etrafındaki bir sarmalayıcıdır . Bu, iki yönlü veri bağlamayı destekleyen standart arabirimlerden biridir. ListChangedÖğeleri eklediğinizde, kaldırdığınızda veya ayarladığınızda ortaya çıkan olayı uygulayarak çalışır . Bağlı kontroller, ekranlarını ne zaman yenileyeceklerini bilmek için bu olayı dinler.
Bir BindingSource'un DataSource değerini a olarak ayarladığınızda , listenizi sarmak için List<>dahili olarak bir oluşturur BindingList<>. Listenize BindingList<>BindingSource'un dışından erişmek istiyorsanız listenizi kendinize önceden paketlemek isteyebilirsiniz, ancak aksi halde aynıdır. BindingList<>Öğeleri değiştirirken özel davranışı uygulamak için de buradan devralabilirsiniz .
IEditableObjectBindingSource tarafından işlenir. Herhangi bir ilişkili denetimdeki verileri değiştirdiğinizde, herhangi bir uygulama nesnesinde BeginEdit'i çağırır. Daha sonra BindingSource üzerinde EndEdit / CancelEdit'i çağırabilirsiniz ve onu nesnenize iletir. Farklı bir satıra geçmek EndEdit'i de çağırır.