Edit

Share via


BindingList<T>.SupportsSearchingCore Property

Definition

Gets a value indicating whether the list supports searching.

protected:
 virtual property bool SupportsSearchingCore { bool get(); };
protected virtual bool SupportsSearchingCore { get; }
member this.SupportsSearchingCore : bool
Protected Overridable ReadOnly Property SupportsSearchingCore As Boolean

Property Value

true if the list supports searching; otherwise, false. The default is false.

Examples

The following code example demonstrates how to use the SupportsSearchingCore member.

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

Remarks

The BindingList<T> class does not provide a base implementation of searching, so SupportsSearchingCore always returns false by default. For more information about implementing searching, see the IBindingList.Find method.

Applies to