|
@@ -162,6 +162,7 @@ namespace InABox.Mobile
|
|
|
|
|
|
private void DoRefresh(bool force)
|
|
|
{
|
|
|
+ var curselected = _selectedItems.ToArray();
|
|
|
_items.Clear();
|
|
|
_selectedItems.Clear();
|
|
|
|
|
@@ -171,6 +172,7 @@ namespace InABox.Mobile
|
|
|
if (LoadFromStorage())
|
|
|
{
|
|
|
DoAfterLoad();
|
|
|
+ _selectedItems.AddRange(_items.Where(x=>curselected.Contains(x)));
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
@@ -179,8 +181,11 @@ namespace InABox.Mobile
|
|
|
{
|
|
|
DoLoad();
|
|
|
SaveToStorage();
|
|
|
+ _selectedItems.AddRange(_items.Where(x=>curselected.Contains(x)));
|
|
|
return;
|
|
|
}
|
|
|
+
|
|
|
+ _selectedItems.AddRange(_items.Where(x=>curselected.Contains(x)));
|
|
|
|
|
|
}
|
|
|
|
|
@@ -298,13 +303,14 @@ namespace InABox.Mobile
|
|
|
|
|
|
public void Search()
|
|
|
{
|
|
|
+ var curselected = _selectedItems.ToArray();
|
|
|
var items = _allitems == null
|
|
|
? new List<TItem>()
|
|
|
: SearchPredicate != null
|
|
|
? new List<TItem>(_allitems.Where(SearchPredicate))
|
|
|
: new List<TItem>(_allitems);
|
|
|
|
|
|
- _selectedItems = new CoreObservableCollection<TItem>();
|
|
|
+ _selectedItems = new CoreObservableCollection<TItem>(items.Where(x=>curselected.Contains(x)));
|
|
|
OnPropertyChanged(nameof(SelectedItems));
|
|
|
//_selectedItems.RemoveAll(x => !items.Contains(x));
|
|
|
|