private void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (e.AddedItems.Count == 0) { return; } _selectedTop = e.AddedItems[0] as Top; Top top = _selectedTop.Copy(); SetControlsVisibility(Visibility.Hidden); if (_worker.IsBusy) { _worker.CancelAsync(); return; } _worker.RunWorkerAsync(top); }