public virtual void MoveToTopSelectedItem() { if (Items == null || !Items.Any()) { return; } foreach (var i in Items) { i.IsSelectedItemForView = false; } if (!SelectedItemIsNull) { SelectedItem.IsSelectedItemForView = true; } var item = SelectedItem; var notSelected = Items.Where(x => !x.IsSelectedItemForView).ToList(); Items.Clear(); Items.Add(item); Items.AddRange(notSelected); SelectedItem = item; Notify(nameof(Items)); CreateNewCommand?.NotifyCanExecuteChanged(); }
public virtual void ClearItems() { if (Items != null && AnyItem()) { Items.Clear(); Notify(nameof(Items)); CreateNewCommand?.NotifyCanExecuteChanged(); } }
public virtual void Remove(T item) { if (Items != null && AnyItem()) { Items.Remove(item); SelectedItem = Items.FirstOrDefault(); Notify(nameof(Items)); CreateNewCommand?.NotifyCanExecuteChanged(); } }
public virtual void AddItem(T item) { if (Items != null) { Items.Add(item); SelectedItem = item; Notify(nameof(Items)); CreateNewCommand?.NotifyCanExecuteChanged(); } }
public virtual void RemoveEmptyItems() { if (Items != null) { var data = Items.Where(x => x.Id == 0).ToList(); foreach (var d in data) { Items.Remove(d); } CreateNewCommand?.NotifyCanExecuteChanged(); } }
public void Refresh() { Notify(nameof(Items)); CreateNewCommand?.NotifyCanExecuteChanged(); }