几小时前我发了一个问题(http://stackoverflow.com/questions/11134264/c-sharp-add-properties-at-runtime)。我问过用新属性扩展现有的类。而且,那没关系。我管理添加新属性,但现在我需要根据dinamically添加的属性将GroupDescription添加到PagedCollectionView。这意味着我有课
MyClass
{
string _name;
string _phone;
}
现在,我想要使用生成的值添加新属性(JobTitle,Position),并为JobTitle和Position定义GroupDescriptions。 有了上面提到的实现,我有
Dictionary<string, string> Attributes;
但是,如果我说
collection.AddGroupDescription(key);
它将根据Key-JobTitle对数据进行分组,而不是按值进行分组。
谢谢你, Joksimovic
答案 0 :(得分:0)
所以实现这一目标的标准方法如下:
MyClass
{
string _name;
string _phone;
string _jobTitle;
string _position;
}
private ObservableCollection<MyClass> collection = //fetch from web service or something
PagedCollectionView pcv = new PagedCollectionView(collection);
pcv.GroupDescriptions.Add(new PropertyGroupDescription("JobTitle"));
DataGrid.ItemsSource = pcv;