Hi !
My collection implements ObservableCollection<T> wich implements Collection<T> wich implements both IList<T> and IList. In my CanRemove, I don't check anything as it's only used for this specific type so it looks like something like this
public override bool CanRemove { get { return true; } }