Web-Extension Koleksiyon Sınıfları

Web-Extension Koleksiyon Sınıfları

Web-Uzantı Koleksiyon Sınıfları

Bu kılavuz, Aspose.Words FOSS için .NET içinde bulunan dört web uzantısı koleksiyon sınıfının nasıl — TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection, ve WebExtensionReferenceCollection — soyut sınıf aracılığıyla tek bir koleksiyon sözleşmesini paylaşır BaseWebExtensionCollection temel sınıf. Web uzantısı bölmeleri, bağlamalar ve web uzantısı özelliklerinin gerçekte neyi temsil ettiğini görmek için, Web Uzantıları kılavuz; bu sayfa yalnızca hepsinin paylaştığı konteyner API öğesini kapsar.


BaseWebExtensionCollection: Tek Sözleşme, Dört Koleksiyon

BaseWebExtensionCollection, TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection ve WebExtensionReferenceCollection için temel sınıftır. IEnumerable<T>‘i uygular ve bu dört somut koleksiyonun sunduğu her üyeyi tanımlar — dört alt sınıftan hiçbiri, temel sınıfın sağladığı şeyin ötesinde kendi ek metod veya özelliklerini ilan etmez.


Öğeleri Eklemek, Kaldırmak ve Saymak

Add(item) belirtilen öğeyi koleksiyona ekler. Clear() tüm elemanları kaldırır. Remove(index) belirtilen indeksdeki öğeyi kaldırır — bir öğe referansı değil, konumsal bir index alır, bu yüzden belirli bir öğeyi kaldırmak önce onun indeksini bulmayı gerektirir. Count koleksiyondaki mevcut eleman sayısını raporlar.


Bir Koleksiyonu Dizinlemek

GetEnumerator() bir koleksiyon üzerinden yineleme yapabilen bir enumerator döndürür, böylece herhangi bir BaseWebExtensionCollection-türevi koleksiyon, öğeleri üzerinde tip-özel yineleme kodu olmadan bir foreach döngüsü destekler.


İpuçları ve En İyi Uygulamalar

  • Dört koleksiyonun tamamı aynı temel sözleşmeyi paylaştığı için, BaseWebExtensionCollection‘ın Add, Clear, Remove, Count ve GetEnumerator üyelerine karşı yazılan kod, TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection ve WebExtensionReferenceCollection üzerinde tutarlı şekilde çalışır.
  • Remove(index) konumsal bir indeks alır — yalnızca öğenin kendisine sahipseniz, önce koleksiyonu yineleyerek indeksini bulun ya da ekleme sırasında indeksi izleyin.
  • Yineleme yapmadan önce Count‘ı okuyun, ya da temel sözleşme konumsal bir getter sağlamadığından, manuel olarak indekslemeye yerine GetEnumerator() ile doğrudan koleksiyon üzerinde foreach yapın.
  • Bir koleksiyonu sıfırlamanız gerektiğinde döngü içinde sürekli Remove çağırmak yerine Clear()‘ı çağırın.

Yaygın Sorunlar

SorunNedenDüzelt
Remove öğeyi kendisi olarak kabul etmezRemove(index), BaseWebExtensionCollection-türevi koleksiyonlarda konumsal bir indeks alır, referans almazÖğenin indeksini önce bulun (örneğin döngü sırasında), ardından Remove(index) çağırın
Dört koleksiyondan birinde yineleme yapmak, türler arasında tekrarlanmış gibi hissettiriyorHer koleksiyon ayrı bir somut tiptir, ancak hepsi BaseWebExtensionCollection‘ın üyelerini paylaşırOrtak yineleme veya yardımcı mantığı, dört koleksiyonun ortak olan Add, Clear, Remove, Count ve GetEnumerator üyelerine karşı bir kez yazın
Bir kod parçasının hangi somut koleksiyon tipine ihtiyacı olduğundan emin değilimDört koleksiyon, WebExtension ve Document üzerindeki farklı özelliklerden sunulurKontrol edin Web Extensions hangi özelliğin hangi koleksiyon tipini döndürdüğünü gösteren kılavuz

FAQ

Dört web uzantısı koleksiyonu aynı şekilde davranmasının nedeni nedir?

Hepsi aynı soyut temel sınıfı, BaseWebExtensionCollection, türetir; bu sınıf Add, Clear, Remove, Count ve GetEnumerator tanımlar — dört alt sınıftan hiçbiri kendi üyelerini eklemez.

Bu koleksiyonlardan birindeki belirli bir öğeyi nasıl kaldırırım?

Remove(index)‘ı öğenin konumsal indeksiyle çağırın — yalnızca öğe referansına sahipseniz, önce koleksiyonu enumerate ederek indeksi bulun.

Bu dört koleksiyondan herhangi birini aynı şekilde yineleyebilir miyim?

Evet — dört tanesi de IEnumerable<T>‘ı BaseWebExtensionCollection aracılığıyla uygular, bu yüzden GetEnumerator() / foreach hepsinde aynı şekilde çalışır.

Bir WebExtensionBinding ya da TaskPane öğesinin gerçekte neyi temsil ettiğini nereden öğrenebilirim?

Şuraya bakın Web Extensions rehber — bu sayfa yalnızca paylaşılan koleksiyon kapsayıcı davranışını kapsar, koleksiyonların tuttuğu alan nesnelerini kapsamaz.


API Reference Özeti

Sınıf/YöntemAçıklama
BaseWebExtensionCollectionDört web-extension koleksiyon tipinin tamamı tarafından paylaşılan soyut temel sınıf
BaseWebExtensionCollection.Add(item)Koleksiyona bir öğe ekler
BaseWebExtensionCollection.Clear()Koleksiyonun tüm öğelerini kaldırır
BaseWebExtensionCollection.Remove(index)Belirtilen indeksteki öğeyi kaldırır
BaseWebExtensionCollection.GetEnumerator()Koleksiyonu yinelemek için bir enumerator döndürür
BaseWebExtensionCollection.CountKoleksiyondaki öğe sayısı
TaskPaneCollectionSomut BaseWebExtensionCollection TaskPane öğe
WebExtensionBindingCollectionSomut BaseWebExtensionCollection WebExtensionBinding öğe
WebExtensionPropertyCollectionSomut BaseWebExtensionCollection WebExtensionProperty öğenin
WebExtensionReferenceCollectionSomut BaseWebExtensionCollection WebExtensionReference öğenin

Ayrıca Bakınız

 Türkçe