public void GoBack() { if (History.Count == 0) { CurrentItems = Orignal; } else { SunburstDrillDownHistory history = null; do { History.TryPop(out history); } while (history != null && history.Items.Count() == 1 && history.Items.First() == CurrentItems.First()); CurrentItems = history == null ? Orignal: history.Items; } if (OnDrillDownChanged != null) { this.OnDrillDownChanged(this, new EventArgs()); } }