<p>Can anyone suggest a good implementation of a generic collection class that implements the <code>IBindingListView</code> &amp; <code>IBindingList</code> interfaces and provides Filtering and Searching capabilities?</p>

<p>I see my current options as:<br /></p>

<ul>
<li>Using a class that someone else has written and tested</li>
<li>Inheriting from <code>BindingList&lt;T&gt;</code>, and implementing the <code>IBindingListView</code> interfaces</li>
<li>Write a custom collection from scratch, implementing <code>IBindingListView</code> and <code>IBindingList</code>.</li>
</ul>

<p>Obviously, the first option is my preferred choice.</p>

A couple of solutions I can think of:
The
SubSonic Project
has a pretty nice implementation of
```
BindlingList<T>
```
which is open source. Although this might require using the entire SubSonic binary to use their implementation.
I enjoy using the classes from the
Power Collections
project. It is fairly simple to inherit from one of the base collections there and implement
```
IBindingListView
```
.