Sdílet prostřednictvím


IBindingList.Find(PropertyDescriptor, Object) Metoda

Definice

Vrátí index řádku, který má danou PropertyDescriptorhodnotu .

public:
 int Find(System::ComponentModel::PropertyDescriptor ^ property, System::Object ^ key);
public int Find (System.ComponentModel.PropertyDescriptor property, object key);
abstract member Find : System.ComponentModel.PropertyDescriptor * obj -> int
Public Function Find (property As PropertyDescriptor, key As Object) As Integer

Parametry

key
Object

Hodnota parametru, který property chcete vyhledat.

Návraty

Index řádku, který má danou PropertyDescriptor.

Výjimky

Příklady

Následující příklad kódu ukazuje, jak implementovat metodu Find .

    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

Poznámky

Tato metoda vybere první řádek, kde se hodnota parametru property rovná hodnotě parametru key .

Tato metoda je podporována, pokud SupportsSearching je true, jinak tato metoda vyvolá NotSupportedException.

Platí pro