Disable Adding Item to Collection
Posted
by Wonko the Sane
on Stack Overflow
See other posts from Stack Overflow
or by Wonko the Sane
Published on 2010-06-09T14:18:37Z
Indexed on
2010/06/09
14:22 UTC
Read the original article
Hit count: 143
Hi All,
I'm sure there's an "easy" answer to this, but for the moment it escapes me.
In an MVVM application, I have a property that is a ObservableCollection, used for displaying some set of elements on the view.
private readonly ObservableCollection<MyType> mMyCollection =
new ObservableCollection<MyType>();
public ObservableCollection<MyType> MyCollection
{
get { return mMyCollection; }
}
I want to restrict consumers of this collection from simply using the property to add to the collection (i.e. I want to prevent this from the view):
viewModel.MyCollection.Add(newThing); // want to prevent this!
Instead, I want to force the use of a method to add items, because there may be another thread using that collection, and I don't want to modify the collection while that thread is processing it.
public void AddToMyCollection(MyType newItem)
{
// Do some thread/task stuff here
}
Thanks, wTs
© Stack Overflow or respective owner