BindingList<T>.FindCore(PropertyDescriptor, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
検索が派生クラスに実装されている場合、指定した値の指定したプロパティ記述子を持つ項目のインデックスを検索します。実装されていない場合は 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
パラメーター
- prop
- PropertyDescriptor
検索対象の PropertyDescriptor。
- key
- Object
検索条件として使用する prop
の値。
戻り値
プロパティ記述子に一致し、指定した値を格納している項目の 0 から始まるインデックス。
例外
FindCore(PropertyDescriptor, Object) は、派生クラスでオーバーライドされません。
例
次のコード例では、 メンバーの使用方法を 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
注釈
クラスは BindingList<T> 検索の基本実装を提供しないため、 FindCore 既定では常に が NotSupportedException スローされます。 検索を有効にするには、 から BindingList<T> 派生し、次のタスクを実行します。
プロパティを に設定するには、 をSupportsSearchingCore
true
オーバーライドしますSupportsSearchingCore。をオーバーライド FindCore して、検索アルゴリズムを実装します。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET