BindingList<T>.FindCore(PropertyDescriptor, Object) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Söker efter indexet för objektet som har den angivna egenskapsbeskrivningen med det angivna värdet, om sökningen implementeras i en härledd klass. annars en 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
Parametrar
- prop
- PropertyDescriptor
Att PropertyDescriptor söka efter.
- key
- Object
Värdet prop för att matcha.
Returer
Det nollbaserade indexet för objektet som matchar egenskapsbeskrivningen och innehåller det angivna värdet.
Undantag
FindCore(PropertyDescriptor, Object) åsidosättas inte i en härledd klass.
Exempel
Följande kodexempel visar hur du FindCore använder medlemmen.
public class MyFontList : BindingList<Font>
{
protected override bool SupportsSearchingCore => 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.Equals((string)key, StringComparison.CurrentCultureIgnoreCase))
{
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
Kommentarer
Klassen BindingList<T> tillhandahåller inte någon basimplementering av sökning och genererar därför FindCore alltid en NotSupportedException som standard. Aktivera sökning genom att härleda från BindingList<T> och utföra följande uppgifter:
Åsidosätt SupportsSearchingCore för att ange SupportsSearchingCore egenskapen till
true.Åsidosätt FindCore för att implementera sökalgoritmen.