<h1>
    Data Views
</h1>

<p>
    The <b>CollectionView</b> class represents a view for
    grouping, sorting, filtering, and navigating data
    collections.
</p>
<p>
    The object model used in the <b>CollectionView</b>
    class is similar to the one defined by .NET's
    <b>ICollectionView</b> and <b>IPagedCollectionView</b>
    interfaces.
</p>
<p>
    To create data views, follow these steps:
</p>
<ol>
    <li>
        Create a new <b>CollectionView</b>.
    </li>
    <li>
        Set the <b>sourceCollection</b> to an array containing
        the raw data.
    </li>
    <li>
        (Optional) Add items to the <b>sortDescriptions</b> array
        to define how the data should be sorted.
    </li>
    <li>
        (Optional) Add items to the <b>groupDescriptions</b> array
        to define how the data should be grouped.
    </li>
    <li>
        (Optional) Set the <b>filter</b> property to a predicate
        function that selects the items that should be included
        in the view.
    </li>
    <li>
        (Optional) Set the <b>pageSize</b> property to define the
        number of items in the view, and use the <b>moveToPage</b>
        method to select the current page.
    </li>
    <li>
        Use the <b>items</b> array to get the output view.
    </li>
    <li>
        Use the <b>currentItem</b> property to get a reference
        to the item that is currently selected, and use the
        <b>currentChanged</b> event to detect a change in selection.
    </li>
</ol>