Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
08/01/13 16:56:57 (11 years ago)
Author:
abeham
Message:

#2044:

  • Updated checked state of listview items in CheckedItemListView when elements were moved in the CheckedItemList
  • Cosmetic change in CheckedItemCollectionView
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core.Views/3.3/CheckedItemListView.cs

    r9456 r9839  
    2121
    2222using System;
     23using System.Collections.Generic;
    2324using System.Drawing;
    2425using System.Linq;
     
    137138        Invoke(new CollectionItemsChangedEventHandler<IndexedItem<T>>(Content_CheckedItemsChanged), sender, e);
    138139      else {
    139         foreach (var item in e.Items) {
    140           if (itemsListView.Items[item.Index].Checked != Content.ItemChecked(item.Value))
    141             itemsListView.Items[item.Index].Checked = Content.ItemChecked(item.Value);
    142         }
     140        UpdateCheckedItemState(e.Items);
    143141        SetNumberOfCheckItems();
    144142      }
     
    154152    protected override void Content_ItemsMoved(object sender, CollectionItemsChangedEventArgs<IndexedItem<T>> e) {
    155153      base.Content_ItemsMoved(sender, e);
     154      UpdateCheckedItemState(e.Items);
    156155      SetNumberOfCheckItems();
    157156    }
     
    173172      }
    174173    }
     174
     175    private void UpdateCheckedItemState(IEnumerable<IndexedItem<T>> items) {
     176      foreach (var item in items) {
     177        var isChecked = Content.ItemChecked(item.Value);
     178        if (itemsListView.Items[item.Index].Checked != isChecked)
     179          itemsListView.Items[item.Index].Checked = isChecked;
     180      }
     181    }
    175182  }
    176183}
Note: See TracChangeset for help on using the changeset viewer.