Sdílet prostřednictvím


AttributeCollection Třída

Definice

Představuje kolekci atributů.

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
Dědičnost
AttributeCollection
Atributy
Implementuje

Příklady

První příklad kódu zkontroluje, jestli je v této kolekci BrowsableAttribute nastavená hodnota. Druhý příklad kódu získá skutečnou DescriptionAttribute hodnotu tlačítka. Oba příklady to vyžadují button1 a textBox1 byly vytvořeny ve formuláři. Pokud používáte atributy, ověřte, že je atribut nastavený, nebo získejte přístup k jeho hodnotě.

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

Poznámky

Třída AttributeCollection je jen pro čtení; neimplementuje metody pro přidání nebo odebrání atributů. K implementaci těchto metod je nutné dědit z této třídy.

Count Pomocí vlastnosti vyhledejte počet atributů, které existují v kolekci.

Můžete také použít metody této třídy k dotazování kolekce na její obsah. Voláním Contains metody ověřte, že v kolekci existuje zadaný atribut nebo pole atributů. Matches Voláním metody ověřte, že v kolekci existuje zadaný atribut nebo pole atributů a že hodnoty zadaných atributů jsou stejné jako hodnoty v kolekci.

I když většina atributů má výchozí hodnoty, výchozí hodnoty nejsou povinné. Pokud atribut nemá výchozí hodnotu, null vrátí se z indexované vlastnosti, která přebírá typ. Při definování vlastních atributů můžete deklarovat výchozí hodnotu buď zadáním konstruktoru, který nepřijímá žádné argumenty, nebo definováním veřejného statického pole typu atributu s názvem Default.

Konstruktory

AttributeCollection()

Inicializuje novou instanci AttributeCollection třídy.

AttributeCollection(Attribute[])

Inicializuje novou instanci AttributeCollection třídy.

Pole

Empty

Určuje prázdnou kolekci, kterou můžete použít, místo vytvoření nové kolekce. Toto pole je jen ke čtení.

Vlastnosti

Attributes

Získá kolekci atributů.

Count

Získá počet atributů.

Item[Int32]

Získá atribut se zadaným číslem indexu.

Item[Type]

Získá atribut se zadaným typem.

Metody

Contains(Attribute)

Určuje, zda má tato kolekce atributů zadaný atribut.

Contains(Attribute[])

Určuje, zda tato kolekce atributů obsahuje všechny zadané atributy v poli atributů.

CopyTo(Array, Int32)

Zkopíruje kolekci do pole počínaje zadaným indexem.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
FromExisting(AttributeCollection, Attribute[])

Vytvoří nový AttributeCollection z existujícího AttributeCollectionobjektu .

GetDefaultAttribute(Type)

Vrátí výchozí hodnotu Attribute daného Typeparametru .

GetEnumerator()

Získá enumerátor pro tuto kolekci.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
Matches(Attribute)

Určuje, zda je zadaný atribut stejný jako atribut v kolekci.

Matches(Attribute[])

Určuje, zda jsou atributy v zadaném poli stejné jako atributy v kolekci.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

ICollection.Count

Získá počet prvků obsažených v kolekci.

ICollection.IsSynchronized

Získá hodnotu označující, zda je synchronizován přístup ke kolekci (bezpečný z více vláken).

ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu ke kolekci.

IEnumerable.GetEnumerator()

Vrátí hodnotu IEnumerator pro IDictionary.

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky objektu na IEnumerable zadaný typ.

OfType<TResult>(IEnumerable)

Filtruje prvky objektu IEnumerable na základě zadaného typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede objekt na IEnumerableIQueryable.

Platí pro

Viz také