public void Load() { if (!File.Exists(StorageFile)) { return; } try { var clipboardItemsList = Storage.ReadFromBinaryFile <List <ClipboardItem> >(StorageFile); CollectionExtensions.AddRange(_clipboardItems, clipboardItemsList); OnCountChanged(_clipboardItems.Count); } catch (Exception err) { Trace.WriteLine(err); } }
public void Filter(string txt) { if (_filtered.Count == 0) { CollectionExtensions.AddRange(_filtered, _clipboardItems); } if (string.IsNullOrWhiteSpace(txt) && _filtered.Count > 0) { _clipboardItems.Clear(); CollectionExtensions.AddRange(_clipboardItems, _filtered); _filtered.Clear(); return; } List <ClipboardItem> items = (from clipboardItem in _clipboardItems let isTextMatched = clipboardItem.Data.Text != null && !clipboardItem.Data.Text.Contains(txt, StringComparison.InvariantCultureIgnoreCase) let isImage = clipboardItem.Data.ClipboardType == ClipboardType.Image where isTextMatched || isImage select clipboardItem).ToList(); _clipboardItems.RemoveRange(items); OnCountChanged(_clipboardItems.Count); }