/// <summary> /// Sube / baja un elemento de la lista /// </summary> private void Move(bool moveUp) { int first = Items.IndexOf(SelectedItem); int second = -1; // Obtiene los índices a intercambiar if (moveUp && first > 0) { second = first - 1; } else if (!moveUp && first < Items.Count - 1) { second = first + 1; } // Intercambia los índices if (second >= 0) { ControlItemViewModel order = Items[first]; // Cambia el orden Items[first] = Items[second]; Items[second] = order; // Selecciona el elemento SelectedItem = order; // Indica que ha habido modificaciones IsUpdated = true; } }
/// <summary> /// Añade un elemento al control /// </summary> public ControlItemViewModel Add(string text, TypeData tag, bool selected = false, bool isBold = false, Media.MvvmColor foreground = null) { ControlItemViewModel newItem = new ControlItemViewModel(text, tag, isBold, foreground); // Añade el elemento a la colección Add(newItem, selected); // Devuelve el elemento return(newItem); }
/// <summary> /// Añade un elemento /// </summary> public void Add(ControlItemViewModel item, bool selected = false) { // Añade el elemento Items.Add(item); // Selecciona el elemento si es necesario if (selected) { SelectedItem = item; } }
/// <summary> /// Añade un elemento /// </summary> public void Add(ControlItemViewModel item, bool selected) { // Añade el elemento Items.Add(item); // Indica si está seleccionado if (selected) { item.IsSelected = true; SelectedItem = item; } }