Telerik UI for Windows Phone by Progress

To create groups in RadJumpList you have to use a group descriptor. Creating a group descriptor and adding it to the GroupDescriptors property automatically arranges the items in RadJumpList so that they are combined in groups based on a criteria that you specify in the descriptor.

For example, you can set the source collection to week days with a group descriptor that differs the groups by the first letter.

CopyC#
GenericGroupDescriptor<string, string>
groupByFirstName = new GenericGroupDescriptor<string, string>( day => day.Substring( 0, 1 ).ToUpper() );
this.radJmpList.GroupDescriptors.Add( groupByFirstName );

Here is a snapshot of the result.

Jump List-Features-Group Descriptors-01

When you click on a letter, the group picker is shown and you can jump to a group.

By the default the items in the picker are the same as the headers of the groups:

Jump List-Features-Group Descriptors-02

Binding the GroupDescriptors collection

RadJumpList allows the developer to perform grouping by binding a source of GroupDescriptors. The GroupDescriptorsSource property is used for this purpose. When it is set the GroupDescriptors property of RadJumpList can no longer be used to add/remove group descriptors, i.e. the control switches to bound mode. Resetting the GroupDescriptorsSource property to null makes the GroupDescriptors collection modifiable again.

The following C# code snippet demonstrates how the GroupDescriptorsSource property can be used:

CopyC#
List<DataDescriptor> groupDescriptors = new List<DataDescriptor>();

GenericGroupDescriptor<string, string> gd = new GenericGroupDescriptor<string, string>();

gd.KeySelector = (string item) =>
{
    return item.SubString(0, 2);
};

groupDescriptors.Add(gd);

gd = new GenericGroupDescriptor<string, string>();

gd.KeySelector = (string item) =>
{
    return item.SubString(3, 1);
};

groupDescriptors.Add(gd);

this.radJumpList.GroupDescriptorsSource = groupDescriptors;

Note
If the GroupDescriptors collection has been manually populated and an attempt is made to bind the GroupDescriptorsSource, and exception will be thrown.