データソースとしてが添付されていますBindingSource
。のメソッドを使用して要素を検索しBindingList<Foo>
たいと思います。ただし、次のことを行うと、データソースが実装されていても(そしてそのような例外はMSDNに文書化されていません)、aがスローされます。BindingSource
Find
NotSupportedException
IBindingList
int pos = bindingSource1.Find("Bar", 5);
以下に短い例を添付しました(a ListBox
、a Button
、a BindingSource
)。誰かが私がFind
呼び出しを機能させるのを手伝ってもらえますか?
public partial class Form1 : Form
{
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e)
{
var src = new BindingList<Foo>();
for(int i = 0; i < 10; i++)
{
src.Add(new Foo(i));
}
bindingSource1.DataSource = src;
}
private void button1_Click(object sender, EventArgs e)
{
int pos = bindingSource1.Find("Bar", 5);
}
}
public sealed class Foo
{
public Foo(int bar)
{
this.Bar = bar;
}
public int Bar { get; private set; }
public override string ToString()
{
return this.Bar.ToString();
}
}