AttributeCollection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет коллекцию атрибутов.
public ref class AttributeCollection : System::Collections::ICollection
public class AttributeCollection : System.Collections.ICollection
[System.Runtime.InteropServices.ComVisible(true)]
public class AttributeCollection : System.Collections.ICollection
type AttributeCollection = class
interface ICollection
interface IEnumerable
[<System.Runtime.InteropServices.ComVisible(true)>]
type AttributeCollection = class
interface ICollection
interface IEnumerable
Public Class AttributeCollection
Implements ICollection
- Наследование
-
AttributeCollection
- Атрибуты
- Реализации
Примеры
В первом примере кода проверяется, задан ли BrowsableAttribute объект в этой коллекции. Во втором примере кода возвращается фактическое DescriptionAttribute значение для кнопки. Для обоих примеров требуется, чтобы button1
и textBox1
были созданы в форме. При использовании атрибутов убедитесь, что атрибут задан, или получите доступ к его значению.
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 доступен только для чтения; он не реализует методы для добавления или удаления атрибутов. Для реализации этих методов необходимо наследовать от этого класса.
Count Используйте свойство , чтобы найти количество атрибутов, существующих в коллекции.
Вы также можете использовать методы этого класса для запроса коллекции о ее содержимом. Вызовите метод , Contains чтобы убедиться, что указанный атрибут или массив атрибутов существует в коллекции. Вызовите метод , Matches чтобы убедиться, что указанный атрибут или массив атрибутов существует в коллекции и что значения указанных атрибутов совпадают со значениями в коллекции.
Хотя большинство атрибутов имеют значения по умолчанию, значения по умолчанию не требуются. Если атрибут не имеет значения по умолчанию, null
возвращается из индексированного свойства, принимающего тип. При определении собственных атрибутов можно объявить значение по умолчанию, предоставив конструктор, который не принимает аргументов, или определив открытое статическое поле типа атрибута с именем Default.
Конструкторы
AttributeCollection() |
Инициализирует новый экземпляр класса AttributeCollection. |
AttributeCollection(Attribute[]) |
Инициализирует новый экземпляр класса AttributeCollection. |
Поля
Empty |
Определяет пустую коллекцию, которую можно использовать, не прибегая к созданию новой. Это поле доступно только для чтения. |
Свойства
Attributes |
Получает коллекцию атрибутов. |
Count |
Возвращает количество атрибутов. |
Item[Int32] |
Возвращает атрибут с указанным номером индекса. |
Item[Type] |
Возвращает атрибут указанного типа. |
Методы
Contains(Attribute) |
Определяет, содержит ли коллекция атрибутов указанный атрибут. |
Contains(Attribute[]) |
Определяет, содержит ли коллекция атрибутов все указанные атрибуты в массиве атрибутов. |
CopyTo(Array, Int32) |
Копирует коллекцию в массив, начиная с указанного индекса. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
FromExisting(AttributeCollection, Attribute[]) |
Создает новую коллекцию AttributeCollection из существующей коллекции AttributeCollection. |
GetDefaultAttribute(Type) | |
GetEnumerator() |
Возвращает перечислитель для этой коллекции. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
Matches(Attribute) |
Определяет, совпадает ли указанный атрибут с атрибутом в коллекции. |
Matches(Attribute[]) |
Определяет, совпадают ли атрибуты в указанном массиве атрибутов с атрибутами в коллекции. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
ICollection.Count |
Возвращает количество элементов, содержащихся в коллекции. |
ICollection.IsSynchronized |
Возвращает значение, указывающее на то, синхронизирован ли доступ к коллекции (потокобезопасный). |
ICollection.SyncRoot |
Возвращает объект, который можно использовать для синхронизации доступа к коллекции. |
IEnumerable.GetEnumerator() |
Возвращает объект IEnumerator для IDictionary. |
Методы расширения
Cast<TResult>(IEnumerable) |
Приводит элементы объекта IEnumerable к заданному типу. |
OfType<TResult>(IEnumerable) |
Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. |
AsParallel(IEnumerable) |
Позволяет осуществлять параллельный запрос. |
AsQueryable(IEnumerable) |
Преобразовывает коллекцию IEnumerable в объект IQueryable. |