private void ContextCloseAllButThis(object sender, RoutedEventArgs e)
{
UIElement tabTitle = (Control)((MenuItem)e.OriginalSource).Parent;
tabTitle = ((System.Windows.Controls.Primitives.Popup)((Control)tabTitle).Parent).PlacementTarget;
// Close all the other tabs
for (int i = tab.Count - 1; i >= 0; i--)
{
if (tab[i].Title != tabTitle)
{
// Delete cthe tab
TabBar.Children.Remove(tab[i].Title);
Editor.Children.Remove(tab[i].TextEditor);
tab.RemoveAt(i);
}
}
// Now set focus on the first tab.
if (tab.Count > 0)
{
this.currentTabIndex = 0;
tab[this.currentTabIndex].Title.Opacity = 1.0;
tab[this.currentTabIndex].TextEditor.Visibility = Visibility.Visible;
tab[this.currentTabIndex].TextEditor.Focus();
}
}