protected static void CodeSourcePropertyChange(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (d.GetType() == typeof(CloseableTabItem)) { try { CloseableTabItem cti = ((CloseableTabItem)d); cti.InternTextEdit.Text = (string)e.NewValue; } catch { } } }
public void TabItems_Remove(CloseableTabItem cti) { int pos = _TabItems.IndexOf(cti); if (SelectedTabItem != cti) { } this._TabItems.Remove(cti); List<CloseableTabItem> old = _TabItems; this.TabItems = new List<CloseableTabItem>(_TabItems); old.Clear(); old = null; if (pos >= _TabItems.Count) { pos = _TabItems.Count - 1; if (pos >= 0) SelectedTabItem = _TabItems[_TabItems.Count - 1]; else SelectedTabItem = null; } else { SelectedTabItem = _TabItems[pos]; } if (this.TabItems.Count == 0) { TabItems_Add(new CloseableTabItem("new")); } /*if (SelectedTabItem == cti) { //Das Aktuelle wird geschlossne } else { //Ein anderes wird geschlossen }*/ }
public void TabItems_Add(CloseableTabItem cti) { cti.CloseTab += cti_CloseTab; this._TabItems.Add(cti); List<CloseableTabItem> old = _TabItems; this.TabItems = new List<CloseableTabItem>(_TabItems); this.SelectedTabItem = cti; old.Clear(); old = null; }