Class SynchronizedCollection<TItem>
Represents a thread-safe, synchronized collection that wraps an underlying source collection and provides additional functionality such as item transformation and disposal management.
Inherited Members
Namespace: Telerik.Windows.Core
Assembly: Telerik.Windows.Scheduling.Core.dll
Syntax
public class SynchronizedCollection<TItem> : BatchObservableCollection<TItem>, IDisposable
Type Parameters
TItem
The type of items contained in the collection. |
Remarks
The SynchronizedCollection<TItem> class is designed to synchronize changes between an underlying source collection and the synchronized collection. It supports wrapping items from the source collection using a transformation function and optionally disposing of items when they are removed from the collection. This collection is particularly useful in scenarios where changes to the source collection need to be reflected in a thread-safe manner, or when additional actions (e.g., cleanup) are required for items in the collection.
Methods
Create(IEnumerable, Func<Object, TItem>, Boolean)
Declaration
public static SynchronizedCollection<TItem> Create(IEnumerable sourceCollection, Func<object, TItem> wrapFunction, bool shouldDisposeItems = true)
Parameters
System.Collections.IEnumerable
sourceCollection
|
System.Func<System.Object, TItem>
wrapFunction
|
System.Boolean
shouldDisposeItems
|
Returns
SynchronizedCollection<TItem>
|
Create(IEnumerable, Func<Object, Int32, TItem>, Action<TItem>, Boolean)
Declaration
public static SynchronizedCollection<TItem> Create(IEnumerable sourceCollection, Func<object, int, TItem> wrapFunction, Action<TItem> previewCollectionChangedAction = null, bool shouldDisposeItems = true)
Parameters
System.Collections.IEnumerable
sourceCollection
|
System.Func<System.Object, System.Int32, TItem>
wrapFunction
|
System.Action<TItem>
previewCollectionChangedAction
|
System.Boolean
shouldDisposeItems
|
Returns
SynchronizedCollection<TItem>
|
Create<TSourceItem>(IEnumerable<TSourceItem>, Func<TSourceItem, TItem>, Boolean)
Declaration
public static SynchronizedCollection<TItem> Create<TSourceItem>(IEnumerable<TSourceItem> sourceCollection, Func<TSourceItem, TItem> wrapFunction, bool shouldDisposeItems = true)
Parameters
System.Collections.Generic.IEnumerable<TSourceItem>
sourceCollection
|
System.Func<TSourceItem, TItem>
wrapFunction
|
System.Boolean
shouldDisposeItems
|
Returns
SynchronizedCollection<TItem>
|
Type Parameters
TSourceItem
|
Create<TSourceItem>(IEnumerable<TSourceItem>, Func<TSourceItem, Int32, TItem>, Boolean)
Declaration
public static SynchronizedCollection<TItem> Create<TSourceItem>(IEnumerable<TSourceItem> sourceCollection, Func<TSourceItem, int, TItem> wrapFunction, bool shouldDisposeItems = true)
Parameters
System.Collections.Generic.IEnumerable<TSourceItem>
sourceCollection
|
System.Func<TSourceItem, System.Int32, TItem>
wrapFunction
|
System.Boolean
shouldDisposeItems
|
Returns
SynchronizedCollection<TItem>
|
Type Parameters
TSourceItem
|
Dispose()
Declaration
public void Dispose()
Dispose(Boolean)
Declaration
protected virtual void Dispose(bool disposing)
Parameters
System.Boolean
disposing
|