我正在使用Silverlight 4,RIA服务,MEF和MVVM。
我正在尝试创建系统配置更新页面,以便我可以轻松更新查找表。 我有一个RadGridView,我希望显示它并从多个实体添加新记录。 我想使用以下内容:
ItemsSource="{Binding Path=GenericEntityList, Mode=TwoWay}"
SelectedItem="{Binding Path=SelectedEntity, Mode=TwoWay}"
由于我想使GridView可写,我无法将ItemsSource绑定到CollectionViewSource.View - 我已经在其中我的gridview是ReadOnly的其他实例中完成了。 我希望GenericEntityList是一个ObservableCollection或未知实体类型的列表,直到我选择一个给定的实体类型。 例如,如果我想使用相同的网格编辑销售和产品,我如何推迟制作类型的GenericEntityType,或者直到我选择销售或产品?
很长的方法是在代码隐藏中动态添加ItemsSource和SelectedItem属性。问题是我有大约25个不同的实体,由于缺少更好的词,这将是“不整洁的”。
有什么建议吗?
答案 0 :(得分:1)
您可能想要阅读动态关键字,例如
ObservableCollection<dynamic> dynamicList = new ObservableCollection<dynamic>();
但是,我不确定所有第三方网格是否支持绑定到动态数据。或者,您的查找对象可能没有实现通用接口吗?