2009-10-22 8 views
11

私はリストを含むクラスを持っている:火コレクションが変更イベント(追加または削除)

public class a 
{ 
private List<MyType> _Children; 
public Children 
{ 
get {return(_Children);} 
set {_Children = value ;} 
} 
} 

私は私のリスト(ここでは_childrenが)のために変更されるたびにイベントを作成し、そのイベントを発生しますたとえば、アイテムがアイテムに追加されたりアイテムから削除されたり、クリアされたりします。

おかげ

答えて

19
ObservableCollection<T>にあなたのリストを変更し

。それはINotifyCollectionChangedを実装しているので、イベントを購読してそのイベントを変更することができます。

フルリストセマンティクスが必要な場合は、BindingList<T>を使用することもできます。

+8

ことの一つは、あなたが(あなたがそれをロックするか否か)の上に作成したもの以外のスレッドからそれに要素を追加しようとする場合に例外がスローされますです。 –

+0

非常に良い点、280Z28。 –

0

を参照するか、またはあなたが追加を制御し、方法を削除して、イベントを発生させる、Collection<T>アウトを確認したい場合。 ObservableCollectionについて覚えておくべき

http://msdn.microsoft.com/en-us/library/ms132397.aspx

関連する問題