RaUI/Source/ryControls/ExtendedWebBrowser/NotifyCollection.cs
2020-11-28 15:03:57 +08:00

43 lines
947 B
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.ObjectModel;
namespace ExtendedWebBrowser2
{
class NotifyCollection<T> : Collection<T>
{
public event EventHandler CollectionChanged;
protected virtual void OnCollectionChanged(EventArgs e)
{
if (CollectionChanged != null)
CollectionChanged(this, e);
}
protected override void ClearItems()
{
base.ClearItems();
OnCollectionChanged(EventArgs.Empty);
}
protected override void InsertItem(int index, T item)
{
base.InsertItem(index, item);
OnCollectionChanged(EventArgs.Empty);
}
protected override void RemoveItem(int index)
{
base.RemoveItem(index);
OnCollectionChanged(EventArgs.Empty);
}
protected override void SetItem(int index, T item)
{
base.SetItem(index, item);
OnCollectionChanged(EventArgs.Empty);
}
}
}