public virtual object this [int index] {
get {
if (index < 0 || index >= Count)
throw new ArgumentOutOfRangeException ("Index of out range");
return object_items[index];
}
set {
if (index < 0 || index >= Count)
throw new ArgumentOutOfRangeException ("Index of out range");
if (value == null)
throw new ArgumentNullException ("value");
#if NET_2_0
//UIA Framework event: Item Removed
OnUIACollectionChangedEvent (new CollectionChangeEventArgs (CollectionChangeAction.Remove, object_items [index]));
#endif
object_items[index] = value;
#if NET_2_0
//UIA Framework event: Item Added
OnUIACollectionChangedEvent (new CollectionChangeEventArgs (CollectionChangeAction.Add, value));
#endif
owner.CollectionChanged ();
}
}