AttributeCollection Класс

Определение

Представляет коллекцию атрибутов.Represents a collection of attributes.

public ref class AttributeCollection : System::Collections::ICollection
[System.Runtime.InteropServices.ComVisible(true)]
public class AttributeCollection : System.Collections.ICollection
type AttributeCollection = class
    interface ICollection
    interface IEnumerable
Public Class AttributeCollection
Implements ICollection
Наследование
AttributeCollection
Атрибуты
Реализации

Примеры

В первом примере кода проверяется, задан ли BrowsableAttribute объект в этой коллекции.The first code example checks to see whether the BrowsableAttribute has been set in this collection. Во втором примере кода возвращается фактическое значение DescriptionAttribute объекта для кнопки.The second code example gets the actual value of the DescriptionAttribute for a button. Для обоих примеров требуется button1 , textBox1 чтобы и были созданы в форме.Both examples require that button1 and textBox1 have been created on a form. При использовании атрибутов убедитесь, что был задан атрибут, или получите доступ к его значению.When using attributes, verify that an attribute has been set, or access its value.

private:
   void ContainsAttribute()
   {
      // Creates a new collection and assigns it the attributes for button1.
      AttributeCollection^ attributes;
      attributes = TypeDescriptor::GetAttributes( button1 );
      
      // Sets an Attribute to the specific attribute.
      BrowsableAttribute^ myAttribute = BrowsableAttribute::Yes;

      if ( attributes->Contains( myAttribute ) )
      {
         textBox1->Text = "button1 has a browsable attribute.";
      }
      else
      {
         textBox1->Text = "button1 does not have a browsable attribute.";
      }
   }
private void ContainsAttribute() {
    // Creates a new collection and assigns it the attributes for button1.
    AttributeCollection attributes;
    attributes = TypeDescriptor.GetAttributes(button1);
 
    // Sets an Attribute to the specific attribute.
    BrowsableAttribute myAttribute = BrowsableAttribute.Yes;
 
    if (attributes.Contains(myAttribute))
       textBox1.Text = "button1 has a browsable attribute.";
    else
       textBox1.Text = "button1 does not have a browsable attribute.";
 }
Private Sub ContainsAttribute()
    ' Creates a new collection and assigns it the attributes for button1.
    Dim attributes As AttributeCollection
    attributes = TypeDescriptor.GetAttributes(button1)
    
    ' Sets an Attribute to the specific attribute.
    Dim myAttribute As BrowsableAttribute = BrowsableAttribute.Yes
    
    If attributes.Contains(myAttribute) Then
        textBox1.Text = "button1 has a browsable attribute."
    Else
        textBox1.Text = "button1 does not have a browsable attribute."
    End If
End Sub
private:
   void GetAttributeValue()
   {
      // Creates a new collection and assigns it the attributes for button1.
      AttributeCollection^ attributes;
      attributes = TypeDescriptor::GetAttributes( button1 );
      
      // Gets the designer attribute from the collection.
      DesignerAttribute^ myDesigner;
      myDesigner = (DesignerAttribute^)(attributes[DesignerAttribute::typeid]);
      
      // Prints the value of the attribute in a text box.
      textBox1->Text = myDesigner->DesignerTypeName;
   }
private void GetAttributeValue() {
    // Creates a new collection and assigns it the attributes for button1.
    AttributeCollection attributes;
    attributes = TypeDescriptor.GetAttributes(button1);
 
    // Gets the designer attribute from the collection.
    DesignerAttribute myDesigner; 
    myDesigner = (DesignerAttribute)attributes[typeof(DesignerAttribute)];
 
    // Prints the value of the attribute in a text box.
    textBox1.Text = myDesigner.DesignerTypeName;
 }
Private Sub GetAttributeValue()
    ' Creates a new collection and assigns it the attributes for button1.
    Dim attributes As AttributeCollection
    attributes = TypeDescriptor.GetAttributes(button1)
    
    ' Gets the designer attribute from the collection.
    Dim myDesigner As DesignerAttribute
    myDesigner = CType(attributes(GetType(DesignerAttribute)), DesignerAttribute)
    
    ' Prints the value of the attribute in a text box.
    textBox1.Text = myDesigner.DesignerTypeName
End Sub

Комментарии

AttributeCollection Класс доступен только для чтения; он не реализует методы для добавления или удаления атрибутов.The AttributeCollection class is read-only; it does not implement methods to add or remove attributes. Для реализации этих методов необходимо наследовать от этого класса.You must inherit from this class to implement these methods.

Count Используйте свойство, чтобы определить количество атрибутов, существующих в коллекции.Use the Count property to find the number of attributes that exist in the collection.

Методы этого класса также можно использовать для запроса коллекции о его содержимом.You can also use the methods of this class to query the collection about its contents. Вызовите Contains метод, чтобы убедиться, что указанный атрибут или массив атрибутов существует в коллекции.Call the Contains method to verify that a specified attribute or attribute array exists in the collection. Вызовите Matches метод, чтобы убедиться, что указанный атрибут или массив атрибутов существует в коллекции, и что значения указанных атрибутов совпадают со значениями в коллекции.Call the Matches method to verify that a specified attribute or array of attributes exists in the collection, and that the values of the specified attributes are the same as the values in the collection.

Хотя большинство атрибутов имеют значения по умолчанию, значения по умолчанию не требуются.While most attributes have default values, default values are not required. Если атрибут не имеет значения по умолчанию null , то возвращается из индексированного свойства, которое принимает тип.If an attribute has no default value, null is returned from the indexed property that takes a type. При определении собственных атрибутов можно объявить значение по умолчанию, предоставив конструктор, который не принимает аргументы, или определив открытое статическое поле типа атрибута с именем "default".When defining your own attributes, you can declare a default value by either providing a constructor that takes no arguments, or defining a public static field of your attribute type named "Default".

Конструкторы

AttributeCollection()

Инициализирует новый экземпляр класса AttributeCollection.Initializes a new instance of the AttributeCollection class.

AttributeCollection(Attribute[])

Инициализирует новый экземпляр класса AttributeCollection.Initializes a new instance of the AttributeCollection class.

Поля

Empty

Определяет пустую коллекцию, которую можно использовать, не прибегая к созданию новой.Specifies an empty collection that you can use, rather than creating a new one. Это поле доступно только для чтения.This field is read-only.

Свойства

Attributes

Получает коллекцию атрибутов.Gets the attribute collection.

Count

Возвращает количество атрибутов.Gets the number of attributes.

Item[Int32]

Возвращает атрибут с указанным номером индекса.Gets the attribute with the specified index number.

Item[Type]

Возвращает атрибут указанного типа.Gets the attribute with the specified type.

Методы

Contains(Attribute)

Определяет, содержит ли коллекция атрибутов указанный атрибут.Determines whether this collection of attributes has the specified attribute.

Contains(Attribute[])

Определяет, содержит ли коллекция атрибутов все указанные атрибуты в массиве атрибутов.Determines whether this attribute collection contains all the specified attributes in the attribute array.

CopyTo(Array, Int32)

Копирует коллекцию в массив, начиная с указанного индекса.Copies the collection to an array, starting at the specified index.

Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
FromExisting(AttributeCollection, Attribute[])

Создает новую коллекцию AttributeCollection из существующей коллекции AttributeCollection.Creates a new AttributeCollection from an existing AttributeCollection.

GetDefaultAttribute(Type)

Возвращает Attribute по умолчанию с заданным типом Type.Returns the default Attribute of a given Type.

GetEnumerator()

Возвращает перечислитель для этой коллекции.Gets an enumerator for this collection.

GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
Matches(Attribute)

Определяет, совпадает ли указанный атрибут с атрибутом в коллекции.Determines whether a specified attribute is the same as an attribute in the collection.

Matches(Attribute[])

Определяет, совпадают ли атрибуты в указанном массиве атрибутов с атрибутами в коллекции.Determines whether the attributes in the specified array are the same as the attributes in the collection.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

ICollection.Count

Возвращает количество элементов, содержащихся в коллекции.Gets the number of elements contained in the collection.

ICollection.IsSynchronized

Возвращает значение, указывающее на то, синхронизирован ли доступ к коллекции (потокобезопасный).Gets a value indicating whether access to the collection is synchronized (thread-safe).

ICollection.SyncRoot

Возвращает объект, который можно использовать для синхронизации доступа к коллекции.Gets an object that can be used to synchronize access to the collection.

IEnumerable.GetEnumerator()

Возвращает объект IEnumerator для IDictionary.Returns an IEnumerator for the IDictionary.

Методы расширения

Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.Enables parallelization of a query.

AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.Converts an IEnumerable to an IQueryable.

Применяется к

Дополнительно