BindingList<T>.FindCore(PropertyDescriptor, Object) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Türetilmiş bir sınıfta arama uygulanıyorsa, belirtilen değerle belirtilen özellik tanımlayıcısını içeren öğenin dizinini arar; aksi takdirde, bir NotSupportedException.
protected:
virtual int FindCore(System::ComponentModel::PropertyDescriptor ^ prop, System::Object ^ key);
protected virtual int FindCore (System.ComponentModel.PropertyDescriptor prop, object key);
abstract member FindCore : System.ComponentModel.PropertyDescriptor * obj -> int
override this.FindCore : System.ComponentModel.PropertyDescriptor * obj -> int
Protected Overridable Function FindCore (prop As PropertyDescriptor, key As Object) As Integer
Parametreler
- prop
- PropertyDescriptor
PropertyDescriptor Aranacak.
- key
- Object
Eşleştirecek değeri prop
.
Döndürülenler
Özellik tanımlayıcısı ile eşleşen ve belirtilen değeri içeren öğenin sıfır tabanlı dizini.
Özel durumlar
FindCore(PropertyDescriptor, Object) türetilmiş bir sınıfta geçersiz kılınmadı.
Örnekler
Aşağıdaki kod örneğinde üyenin nasıl kullanılacağı gösterilmektedir FindCore .
public class MyFontList : BindingList<Font>
{
protected override bool SupportsSearchingCore
{
get { return true; }
}
protected override int FindCore(PropertyDescriptor prop, object key)
{
// Ignore the prop value and search by family name.
for (int i = 0; i < Count; ++i)
{
if (Items[i].FontFamily.Name.ToLower() == ((string)key).ToLower())
return i;
}
return -1;
}
}
}
Public Class MyFontList
Inherits BindingList(Of Font)
Protected Overrides ReadOnly Property SupportsSearchingCore() As Boolean
Get
Return True
End Get
End Property
Protected Overrides Function FindCore(ByVal prop As PropertyDescriptor, _
ByVal key As Object) As Integer
' Ignore the prop value and search by family name.
Dim i As Integer
While i < Count
If Items(i).FontFamily.Name.ToLower() = CStr(key).ToLower() Then
Return i
End If
i += 1
End While
Return -1
End Function
End Class
Açıklamalar
sınıfı BindingList<T> , aramanın temel bir uygulamasını sağlamaz ve bu nedenle FindCore her zaman varsayılan olarak bir NotSupportedException oluşturur. Aramayı etkinleştirmek için aşağıdaki görevleri türetin BindingList<T> ve gerçekleştirin:
özelliğini olarak ayarlamak SupportsSearchingCore için
true
geçersiz kılınSupportsSearchingCore.Bulma algoritmasını uygulamak için geçersiz kılın FindCore .