【发布时间】:2010-12-21 01:33:19
【问题描述】:
在客户端过滤 DomainDataSource(DDS) 的最佳方法是什么?
我的 DDS 连接到 WCF Ria 服务并下载许多项目。我想在不同的控件中显示这些信息的一部分。例如,一些 ItemsControls 显示 DDS 中按各种值过滤的项目。我知道我可以为服务器上的每个控件和过滤器创建一个新的 DDS,但我宁愿只执行 1 次。
我尝试使用 iValueConverter 进行过滤。例如
ItemsSource="{Binding Data, ElementName=PermissionsByUserDS, Converter={StaticResource PermissionsByTypeConverter}, ConverterParameter={StaticResource GeneralPermissions}}"
当控件第一次绑定数据但当 DDS 重新加载其数据时它们不会更新时,这可以正常工作。如果我删除转换器,ItemsControls 会按预期更新,但显然我没有得到过滤。
我也可以在每次 DDS 更新时在代码中手动进行过滤和绑定,但我不确定这是不是最好的方法。
有什么建议吗?
【问题讨论】:
标签: silverlight binding wcf-ria-services ivalueconverter