2015-07-28 2 views
0

Я задаю вопрос, потому что мое приложение падает, когда я пытаюсь использовать свой jumplist. Список правильно заполнены, но когда я пытаюсь сделать прыжок я имелОшибка JumpList на ScrollTo

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} 

редактировать: некоторые 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" />

и 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> 

и создание список

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); 
     } 
    } 
+0

Ошибка: «Предоставленный элемент не существует в коллекции». Предоставляете ли вы фактический элемент для прокрутки? –

+0

нет, все сделано автоматически, проблема возникла, когда я изменил способ заполнения моего списка, это было из текстового документа, и теперь это из документа XML. – Alann

+0

. Пожалуйста, предоставьте код. В противном случае мы не сможем помочь вам – Joehl

ответ

0

Я нашел решение, я имел функцию, обновить список, когда размер изменен, так что, когда я иду в jumpListSelection, приложение обновить список, и именно поэтому он найти пункт извините за неудобства

Смежные вопросы