public void RemoveTab(TabViewModel vm) { Tabs.Remove(vm); ChangedTabs?.Invoke(); if (SelectedIndex > 0) { SelectedIndex -= 1; } ChangedIndex?.Invoke(); }
/// <summary> /// Créé un index à partir d'une valeur statique du type /// </summary> /// <typeparam name="TKey">Type de la clef retournée</typeparam> /// <param name="KeyName">Nom de la clef retrounée</param> /// <returns>Index</returns> public Index <BaseClass, TKey> CreateIndex <TKey>(string KeyName, params Object[] parameters) { Index <BaseClass, TKey> ret = new Index <BaseClass, TKey>(KeyName, parameters); OnIndexChange += new ChangedIndex(ret.IndexChanged); foreach (KeyValuePair <string, Type> type in this.creatable) { TKey key = (TKey)type.Value.InvokeMember(KeyName, BindingFlags.InvokeMethod | BindingFlags.FlattenHierarchy | BindingFlags.GetProperty | BindingFlags.Static | BindingFlags.Public, null, null, null); ret[key] = type.Key; } return(ret); }
public override void OnNavLeftRight(NativeMenu sender, int menuItemIndex, int leftRight) { ChangedIndex?.Invoke(sender, new NativeMenuItemUnmanagedNavigateIndexEventArgs(this, menuItemIndex, leftRight)); }
public void SelectTab(TabViewModel vm) { SelectedIndex = Tabs.IndexOf(vm); ChangedIndex?.Invoke(); }
protected virtual void OnChangedIndex(NativeMenu sender, NativeMenuItemNavigateIndexEventArgs e) { ChangedIndex?.Invoke(sender, e); }