Поделиться через


System.Collections.Specialized Пространство имен

Содержит специализированные и строго типизированные коллекции, например словарь в виде связанного списка, битовый вектор или коллекции, которые содержат только строки.

Классы

CollectionChangedEventManager

Предоставляет реализацию WeakEventManager таким образом, что пользователь может использовать шаблон "слабого прослушивателя событий" для присоединения прослушивателей для события CollectionChanged.

CollectionsUtil

Создает коллекции, которые не учитывают регистр строк.

HybridDictionary

Реализует интерфейс IDictionary с помощью класса ListDictionary, когда коллекция небольшая, и переключается на класс Hashtable, когда коллекция увеличивается.

ListDictionary

Реализует интерфейс IDictionary с помощью однонаправленного списка. Рекомендуется для коллекций, которые обычно содержат менее 10 элементов.

NameObjectCollectionBase

Предоставляет abstract базовый класс для коллекции связанных ключей String и значений Object, доступ к которым можно получить с помощью ключа или индекса.

NameObjectCollectionBase.KeysCollection

Представляет коллекцию ключей String коллекции.

NameValueCollection

Представляет коллекцию связанных ключей String и значений String, доступ к которым можно получить с помощью ключа или индекса.

NotifyCollectionChangedEventArgs

Предоставляет данные для события CollectionChanged.

OrderedDictionary

Представляет коллекцию пар "ключ-значение", доступ к которым можно получить по ключу и индексу.

StringCollection

Представляет коллекцию строк.

StringDictionary

Реализует хэш-таблицу с ключом и значением, строго типизированными как строки, а не объекты.

StringEnumerator

Поддерживает простой перебор коллекции StringCollection.

Структуры

BitVector32

Представляет простую структуру с объемом памяти 32 бита, в которой хранятся логические значения и двухбайтовые целые числа.

BitVector32.Section

Представляет раздел вектора, который может содержать целое число.

Интерфейсы

INotifyCollectionChanged

Информирует прослушиватели о динамических изменениях, например о добавлении или удалении элемента либо об очистке всего списка.

IOrderedDictionary

Представляет индексированную коллекцию пар «ключ-значение».

Перечисления

NotifyCollectionChangedAction

Описывает действие, вызвавшее событие CollectionChanged.

Делегаты

NotifyCollectionChangedEventHandler

Представляет метод, обрабатывающий событие CollectionChanged.

Комментарии

Специализированные коллекции — это коллекции с очень конкретными целями. NameValueCollection основан на NameObjectCollectionBase; однако NameValueCollection принимает несколько значений для каждого ключа, в то время как NameObjectCollectionBase принимает только одно значение для каждого ключа.

Некоторые строго типизированные System.Collections.Specialized коллекции в пространстве имен — это StringCollection и StringDictionary, которые содержат значения, которые являются исключительно строками.

Класс CollectionsUtil создает экземпляры коллекций без учета регистра.

Некоторые коллекции преобразуются. Например, HybridDictionary класс начинается как и ListDictionary становится , Hashtable когда он становится большим. — KeyedCollection<TKey,TItem> это список, но он также создает словарь подстановки, когда количество элементов достигает заданного порога.