Вопрос

Как лучше всего фильтровать DomainDataSource (DDS) на клиенте?

Мой DDS подключается к службе WCF Ria и загружает несколько элементов. Я хочу показать биты этой информации в разных элементах управления. например, несколько ItemsControls, показывающих элементы из DDS, отфильтрованные по различным значениям. Я знаю, что мог бы создать новый DDS для каждого элемента управления и фильтра на сервере, но я бы предпочел совершить только 1 поездку.

Я попытался использовать iValueConverter для фильтрации. например,

ItemsSource="{Binding Data, ElementName=PermissionsByUserDS, Converter={StaticResource PermissionsByTypeConverter}, ConverterParameter={StaticResource GeneralPermissions}}"

Это прекрасно работает, когда элементы управления сначала привязаны к данным, но они не обновляются, когда DDS перезагружает свои данные. Если я удалю конвертер, ItemsControls обновится, как ожидается, но, очевидно, тогда я не получу фильтрацию.

Я также могу выполнять фильтрацию и привязку вручную в коде при каждом обновлении DDS, но я не уверен, что это лучший подход.

Есть предложения?

Это было полезно?
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top