Table of Contents

Class NotifyingCollection<T>

Namespace
MagicUI.Core
Assembly
MagicUI.dll

A collection that can notify its owner's layout system when its contents are updated

public class NotifyingCollection<T> : ICollection<T>, IEnumerable<T>, IEnumerable

Type Parameters

T

The type of contents

Inheritance
NotifyingCollection<T>
Implements
Inherited Members

Constructors

NotifyingCollection(ArrangableElement, ChangeAction)

Creates a notifying collection

public NotifyingCollection(ArrangableElement owner, ChangeAction actionOnChange)

Parameters

owner ArrangableElement

The collection owner

actionOnChange ChangeAction

The action to take when a change occurs

Properties

Count

Gets the number of elements contained in the ICollection<T>.

public int Count { get; }

Property Value

int

The number of elements contained in the ICollection<T>.

IsReadOnly

Gets a value indicating whether the ICollection<T> is read-only.

public bool IsReadOnly { get; }

Property Value

bool

true if the ICollection<T> is read-only; otherwise, false.

this[int]

Indexing operator for this collection

public T this[int idx] { get; set; }

Parameters

idx int

The index

Property Value

T

Methods

Add(T)

Adds an item to the ICollection<T>.

public void Add(T item)

Parameters

item T

The object to add to the ICollection<T>.

Exceptions

NotSupportedException

The ICollection<T> is read-only.

AddRange(IEnumerable<T>)

Convenience method to add several items at once

public void AddRange(IEnumerable<T> items)

Parameters

items IEnumerable<T>

The items to add to the collection

Clear()

Removes all items from the ICollection<T>.

public void Clear()

Exceptions

NotSupportedException

The ICollection<T> is read-only.

Contains(T)

Determines whether the ICollection<T> contains a specific value.

public bool Contains(T item)

Parameters

item T

The object to locate in the ICollection<T>.

Returns

bool

true if item is found in the ICollection<T>; otherwise, false.

CopyTo(T[], int)

Copies the elements of the ICollection<T> to an Array, starting at a particular Array index.

public void CopyTo(T[] array, int arrayIndex)

Parameters

array T[]

The one-dimensional Array that is the destination of the elements copied from ICollection<T>. The Array must have zero-based indexing.

arrayIndex int

The zero-based index in array at which copying begins.

Exceptions

ArgumentNullException

array is null.

ArgumentOutOfRangeException

arrayIndex is less than 0.

ArgumentException

The number of elements in the source ICollection<T> is greater than the available space from arrayIndex to the end of the destination array.

GetEnumerator()

Returns an enumerator that iterates through the collection.

public IEnumerator<T> GetEnumerator()

Returns

IEnumerator<T>

An enumerator that can be used to iterate through the collection.

Remove(T)

Removes the first occurrence of a specific object from the ICollection<T>.

public bool Remove(T item)

Parameters

item T

The object to remove from the ICollection<T>.

Returns

bool

true if item was successfully removed from the ICollection<T>; otherwise, false. This method also returns false if item is not found in the original ICollection<T>.

Exceptions

NotSupportedException

The ICollection<T> is read-only.