我知道我错过了 - 或做错了 - 一些基本的事情,但经过一天的搜索,我无法弄清楚。出于原型设计的目的,我们使用了一个带有人员列表的“全局”公共类(我知道生产代码可能不是一个好的做法)。在整个原型中,我们将 DataGrid 和其他控件绑定到此人员列表。有一个 Person 类,一个带有 Person 列表的 ObservableCollection 和一个 PagedCollectionView 来进行分组/过滤(PagedCollectionView 是我们要做的)。我似乎无法在 PagedCollectionView 中进行“默认”分组。我似乎无法在类中添加分组代码。当我将分组代码添加到屏幕时它可以工作,但是在重新创建页面时这是有问题的,它会不断嵌套分组。这是代码:
public class GlobalData
{
public static PersonListClass PersonList = new PersonListClass();
public static PagedCollectionView PersonListView = new PagedCollectionView(PersonList);
public GlobalData()
{
// THIS IS THE PART THAT DOESN'T WORK. I CAN ADD THIS CODE TO A SCREEN AND IT WORKS FINE.
if (PersonListView.CanGroup == true)
{
PersonListView.GroupDescriptions.Add(new PropertyGroupDescription("RegionName"));
}
}
public class Person
{
// definition of person
}
public class PersonListClass : ObservableCollection<Person>
{
public PersonListClass()
{
// adding a list of persons here
}
}
}
就像我说的那样,我的结构可能不正确和/或缺少一些基本的东西。谢谢你的帮助!