New to Telerik UI for ASP.NET AJAX? Start a free 30-day trial

Represents the strongly-typed collection of MultiSelectItem elements used by RadMultiSelect. Provides helper search APIs (FindChildByText / FindChildByValue / FindChildByAttribute) and maintains the Owner reference when items are added or moved between different controls.

Key behaviors:

  • Setting the Owner on add: ensures item level runtime evaluation (templates / client serialization) can access parent control.
  • Moving items between controls: SetOwner(MultiSelectItem) removes the item from a previous owner's Items collection to prevent duplicates.
  • Search helpers perform linear scans; for large sets consider caching or projecting into dictionaries externally.
  • Implements IList<T> members explicitly where mutation control or custom logic is required.

Common search phrases: "RadMultiSelect find item by value", "get selected item object", "update multiselect item text server side".

Definition

Namespace:Telerik.Web.UI.MultiSelect

Assembly:Telerik.Web.UI.dll

Syntax:

C#
public class MultiSelectItemCollection : BaseCollection<MultiSelectItem>, IList, ICollection, IStateManager, IList<MultiSelectItem>, ICollection<MultiSelectItem>, IEnumerable<MultiSelectItem>, IEnumerable

Inheritance: objectStateManagedCollectionBaseCollection<MultiSelectItem>MultiSelectItemCollection

Implements: ICollectionICollection<MultiSelectItem>IEnumerableIEnumerable<MultiSelectItem>IListIList<MultiSelectItem>IStateManager...

Inherited Members BaseCollection<MultiSelectItem>.GetEnumerator()BaseCollection<MultiSelectItem>.SetDirtyObject(object)BaseCollection<MultiSelectItem>.Remove(MultiSelectItem)BaseCollection<MultiSelectItem>.Insert(int, MultiSelectItem)BaseCollection<MultiSelectItem>.Contains(MultiSelectItem)BaseCollection<MultiSelectItem>.IndexOf(MultiSelectItem)BaseCollection<MultiSelectItem>.this[int]BaseCollection<MultiSelectItem>.OwnerStateManagedCollection.Clear()StateManagedCollection.CopyTo(Array, int)StateManagedCollection.CreateKnownType(int)StateManagedCollection.GetKnownTypes()StateManagedCollection.OnClear()StateManagedCollection.OnClearComplete()StateManagedCollection.OnValidate(object)StateManagedCollection.OnInsert(int, object)StateManagedCollection.OnInsertComplete(int, object)StateManagedCollection.OnRemove(int, object)StateManagedCollection.OnRemoveComplete(int, object)StateManagedCollection.SetDirty()StateManagedCollection.Countobject.ToString()object.Equals(object)object.Equals(object, object)object.ReferenceEquals(object, object)object.GetHashCode()object.GetType()object.MemberwiseClone()...

Constructors

C#
public MultiSelectItemCollection()
C#
public MultiSelectItemCollection(RadMultiSelect owner)
Parameters:ownerRadMultiSelect

Methods

Adds a single item to the collection and assigns the Owner (if present).

C#
public override void Add(MultiSelectItem item)
Parameters:itemMultiSelectItem

Item to add.

Overrides: BaseCollection<MultiSelectItem>.Add(MultiSelectItem)

Implements: ICollection<MultiSelectItem>.Add(MultiSelectItem)

Adds multiple items, invoking Add(MultiSelectItem) per element so ownership is applied consistently.

C#
public override void AddRange(IEnumerable<MultiSelectItem> items)
Parameters:itemsIEnumerable<MultiSelectItem>

Sequence of items to add.

Overrides: BaseCollection<MultiSelectItem>.AddRange(IEnumerable<MultiSelectItem>)

Returns the first item matching the provided predicate or null if none match.

C#
public MultiSelectItem FindChild(Predicate<MultiSelectItem> match)
Parameters:matchPredicate<MultiSelectItem>

Predicate used to test each item.

Returns:

MultiSelectItem

Exceptions: ArgumentNullException

Thrown when match is null.

Finds first item whose Attributes collection contains the given key/value pair. Returns null if not found or Attributes is null / key missing.

C#
public MultiSelectItem FindChildByAttribute(string attributeName, string attributeValue)
Parameters:attributeNamestringattributeValuestringReturns:

MultiSelectItem

Finds first item with matching Text using specified case sensitivity.

C#
public MultiSelectItem FindChildByText(string text, bool ignoreCase)
Parameters:textstringignoreCaseboolReturns:

MultiSelectItem

Finds first item with matching Text (case-sensitive).

C#
public MultiSelectItem FindChildByText(string text)
Parameters:textstringReturns:

MultiSelectItem

Finds first item with matching Value using specified case sensitivity.

C#
public MultiSelectItem FindChildByValue(string value, bool ignoreCase)
Parameters:valuestringignoreCaseboolReturns:

MultiSelectItem

Finds first item with matching Value (case-sensitive).

C#
public MultiSelectItem FindChildByValue(string value)
Parameters:valuestringReturns:

MultiSelectItem

Removes the MultiSelectItem object at the specified index from the current MultiSelectItemCollection.

C#
public void RemoveAt(int index)
Parameters:indexint

The zero-based index of the item to remove.

Ensures the supplied item references the current collection's owner and is detached from any previous owner collection.

C#
protected void SetOwner(MultiSelectItem item)
Parameters:itemMultiSelectItem

Item to re-parent.

C#
protected virtual IList<MultiSelectItem> ToList()
Returns:

IList<MultiSelectItem>