private void DoubleClickChange(GenericListViewItem <T> lvitem, MouseEventArgs e)
 {
     if (DoubleClickForChange && ActionType.HasFlag(ActionType.Change))
     {
         OnChangeAction(lvitem);
     }
 }
        public virtual Boolean TryInsert(Int32 index, GenericListViewItem <T> lvitem)
        {
            if (lvitem is null)
            {
                throw new ArgumentNullException(nameof(lvitem));
            }

            if (!OverlapAllowed && Items.Any(item => OverlapCheckByText && item.Text.Equals(lvitem.Text) ||
                                             OverlapCheckByItem && lvitem.Item?.Equals(default) == false && item.Item?.Equals(lvitem.Item) == true))
 public virtual void OnChangeAction(GenericListViewItem <T> lvitem)
 {
     ItemForm.TextBox.Clear();
     ItemForm.TextBox.Text = lvitem.Text;
     if (ItemForm.ShowDialog() == DialogResult.OK && IsValidItemText(ItemForm.TextBox.Text))
     {
         lvitem.Text = ItemForm.TextBox.Text;
     }
 }
        public Boolean TryInsert(Int32 index, T item)
        {
            GenericListViewItem <T> lvitem = new GenericListViewItem <T>(item.ToString())
            {
                Item = item
            };

            return(TryInsert(index, lvitem));
        }
Beispiel #5
0
        public override Boolean TryInsert(Int32 index, GenericListViewItem <T> lvitem)
        {
            if (!base.TryInsert(index, lvitem))
            {
                return(false);
            }

            ItemAdded?.Invoke(index, lvitem);
            return(true);
        }
Beispiel #6
0
        private void OnItemClick(GenericListViewItem <T> item, MouseEventArgs e)
        {
            switch (e.Clicks)
            {
            case 1:
                ItemClick?.Invoke(item, e);
                break;

            case 2:
                ItemDoubleClick?.Invoke(item, e);
                break;

            default:
                break;
            }
        }
Beispiel #7
0
        public Boolean Remove(GenericListViewItem <T> item)
        {
            if (item is null)
            {
                throw new ArgumentNullException(nameof(item));
            }

            if (!Contains(item))
            {
                return(false);
            }

            _items.Remove(item);
            OnRemove?.Invoke(ref item);
            ItemsChanged?.Invoke();

            return(true);
        }
Beispiel #8
0
        public void RemoveAt(Int32 index)
        {
            if (index < 0 || index >= Count)
            {
                throw new ArgumentOutOfRangeException(nameof(index));
            }

            GenericListViewItem <T> item = (GenericListViewItem <T>)_items[index];

            _items.RemoveAt(index);

            if (item is null)
            {
                return;
            }

            OnRemove?.Invoke(ref item);
            ItemsChanged?.Invoke();
        }
 public virtual void OnAddAction(GenericListViewItem <T> lvitem)
 {
     TryInsert(SelectedIndices.OfType <Int32>().FirstOr(SelectedIndices.Count), lvitem);
 }
Beispiel #10
0
 public virtual Boolean IsValidItem(GenericListViewItem <T> lvitem)
 {
     return(IsValidItem(lvitem.Item));
 }
Beispiel #11
0
 public Int32 IndexOf(GenericListViewItem <T> item)
 {
     return(_items.IndexOf(item));
 }
Beispiel #12
0
 public void Add(GenericListViewItem <T> item)
 {
     _items.Add(item ?? throw new ArgumentNullException(nameof(item)));
     OnAdd?.Invoke(ref item);
     ItemsChanged?.Invoke();
 }
Beispiel #13
0
 public void Insert(Int32 index, GenericListViewItem <T> item)
 {
     _items.Insert(index, item ?? throw new ArgumentNullException(nameof(item)));
     OnInsert?.Invoke(index, ref item);
     ItemsChanged?.Invoke();
 }
 public Boolean Contains(GenericListViewItem <T> item)
 {
     return(_items.Contains(item));
 }
Beispiel #15
0
 public Boolean Contains(GenericListViewItem <T> item)
 {
     return(_items.Contains(item ?? throw new ArgumentNullException(nameof(item))));
 }
 protected virtual String GetItemImageKey(GenericListViewItem <T> lvitem)
 {
     return(ImageDictionary.TryGetValue(lvitem.Item, StringUtils.NullString));
 }
 public Boolean TryAdd(GenericListViewItem <T> lvitem)
 {
     return(TryInsert(Items.Count, lvitem));
 }
 protected virtual Font GetItemFont(GenericListViewItem <T> lvitem, DrawingData data)
 {
     return(data.Font ?? lvitem.Font);
 }
 protected virtual Color GetItemForeColor(GenericListViewItem <T> lvitem, DrawingData data)
 {
     return(data.ForegroundColor.IsEmpty ? DefaultForegroundColor : data.ForegroundColor);
 }
 protected virtual Color GetItemBackColor(GenericListViewItem <T> lvitem, DrawingData data)
 {
     return(!IsValidItem(lvitem) ? InvalidColor : data.BackgroundColor.IsEmpty?DefaultBackgroundColor : data.BackgroundColor);
 }