I'm asking a question because my application crash when I try to use my jumplist. The list is filled correctly but when i try to make a jump i had
e.ExceptionObject {System.ArgumentException: The provided item doesn't exist in the collection.
at Microsoft.Phone.Controls.LongListSelector.ScrollTo(Object item, Nullable1 isGroup, Boolean containerViewport, Boolean setUiaFocus)
at Microsoft.Phone.Controls.LongListSelector.OnJumpListClosing(Object item)
at Microsoft.Phone.Controls.JumpListController.BeginHide(Object selectedItem)
at Microsoft.Phone.Controls.JumpListController.OnSelectionChanged(Object sender, SelectionChangedEventArgs e)
at Microsoft.Phone.Controls.LongListSelector.set_SelectedItem(Object value)
at Microsoft.Phone.Controls.LongListSelector.OnItemTap(Object sender, GestureEventArgs e)
at MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)
at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)} System.Exception {System.ArgumentException}
edit : some XAML
<phone:LongListSelector Name="ListCategorie" Margin="13,-30,0,0"
ItemsSource="{Binding GroupedInformation}"
ItemTemplate="{StaticResource orderByCategorieItemTemplate}"
GroupHeaderTemplate="{StaticResource orderByCategorieGroupHeader}"
JumpListStyle="{StaticResource orderByCategorieJumpListStyle}"
IsGroupingEnabled="True"
LayoutMode="List"
GridCellSize="480,62"
SelectionChanged="ListCategorie_SelectionChanged"
/>
and the jumpListStyle
<Style x:Key="orderByCategorieJumpListStyle"
TargetType="phone:LongListSelector">
<Setter Property="LayoutMode"
Value="List" />
<Setter Property="Margin"
Value="12,12,0,0"/>
<Setter Property="ItemTemplate">
<Setter.Value>
<DataTemplate>
<Border Background="{Binding Key,Converter={StaticResource FormatConverter}}"
Width="470"
Height="70"
Margin="6">
<TextBlock Text="{Binding Key}"
Foreground="{Binding Converter={StaticResource ForegroundConverter}}"
FontFamily="{StaticResource PhoneFontFamilySemiLight}"
FontSize="28"
Padding="2"
VerticalAlignment="Bottom"/>
</Border>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
and the creation of the list
public List<KeyedList<string, Information>> GroupedInformation
{
get
{
var infs= Information.loadXml();
infs= Information.orderByCategorie(infs);
var GroupedInformation=
from inf in infs
group inf by inf.categorie into infByCat
select new KeyedList<string, Information>(infByCat);
return new List<KeyedList<string, Information>>(infs);
}
}
I found the solution, I had a function which refresh the list when the size changed, so when I go to the jumpListSelection, the app refresh the list and that's why it find the item sorry for the inconvenience