Привязка CollectionViewSource в DataTemplate

'ContentTemplate' является DataTemplate, который отображает объект, который имеет участника 'FooList' (ObservableCollection).

<DataTemplate x:Key="ContentTemplate">
    <ListBox ItemsSource="{Binding Path=FOO}">
        ...
    </ListBox>
</DataTemplate>

Я должен смочь отфильтровать тот FooList с помощью CollectionViewSource. Это обычно явлено прямым, но я, может казаться, не заставляю привязку работать в DataTemplate. Я попытался к этому:

<DataTemplate x:Key="ContentTemplate">
    <DataTemplate.Resources>
        <CollectionViewSource x:Key="CVS" Source="{Binding Path=FooList}" Filter="FooFilter"/>
    <DataTemplate.Resources>
    <ListBox ItemsSource="{Binding Source={StaticResource CVS}}">

Ошибки, которые я получаю от этого:

Система. Windows. Ошибка данных: 2: не Может найти управляющий FrameworkElement или FrameworkContentElement для целевого элемента. BindingExpression:Path=FooList; DataItem=null; целевым элементом является 'CollectionViewSource' (HashCode=52991666); целевым свойством является 'Источник' (введите 'Объект'),

Который звучит мне как, он ищет 'FooList' на CollectionViewSource вместо объекта, связанного с DataTemplate.

Так..., как я заставляю это смотреть на правильный объект?

12
задан AnthonyW 28 July 2010 в 23:24
поделиться