Hi I created this small example, and I would like to expand it to support Sorting.
public class Country
{
public string Name { get; set; }
public int Sor
I developed a View Model library which does a number of things, including letting you display hierarchical data in sorted order. The library is described in this article. The piece doesn't include a sorting example, but you can easily modify the Demo 2's View Model to sort its hierarchical data. Just do the following:
SampleTreeNodePM
's base constructor indicates if the View Model collections should use the same indices as the Domain Model collections or not. Change this value to false
.DesiredPosition
method override's return value is a boolean that indicates whether to sort the View Model collection or not. Change this value to true
.Following from the previous step, you now need to modify the Domain Model object, SampleTreeNode
, to implement IComparable
. The CompareTo
method need simply delegate the job to the Name
string property:
public int CompareTo( SampleTreeNode other )
{
return Name.CompareTo( other.Name );
}
Regarding updating the position "on the fly" as your question says, just call my library's HierarchicalPresentationModel.UpdatePosition
method after making the change.