private void filterTimer_Tick(object sender, EventArgs e) { ((DispatcherTimer)sender).Stop(); PerformanceUtility.MeasurePerformanceUntilIdle(PerformanceEvent.FilterProjectPane); if (this.searchTransaction == null) { if (!string.IsNullOrEmpty(this.filterString)) { this.searchTransaction = new Microsoft.Expression.Project.UserInterface.SearchTransaction(this.filterString, this.projectInsertion); } } else if (this.searchTransaction != null) { this.searchTransaction.UpdateFilterString(this.filterString); if (string.IsNullOrEmpty(this.filterString)) { this.searchTransaction = null; this.SearchBox.Text = null; } } this.FilterProjects(); this.flattener.RebuildList(false); }