我想创建一个分层排序数据结构,允许我显示其编号深度,如下所示:
1 List Item
1.1 List Item
1.1.1 List Item
1.1.2 List Item
1.1.2.1 List Item
1.2.1 List Item
1.2.2 List Item
1.2.3 List Item
2 List Item
2.1 List Item
2.2 List Item
2.2.1 List Item
...
我确实创建了一个可以保存分层数据的基类,这种方法运行正常。但我希望孩子们按等级排序,这样用户就可以对孩子进行重新排序。项目的编号将在运行时生成,因为它不会为类增加值。
public abstract class HierarchicalData<T> where T:IDescriptiveData
{
public string Title { get; set; }
public string Description { get; set; }
public ulong Rank { get; set; }
public ObservableCollection<T> ChildItems { get; set; } = new ObservableCollection<T>();
public override string ToString()
{
return Title;
}
}
有关如何创建预期行为的任何想法?