AttributeCollection Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Auflistung von Attributen dar.
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
- Vererbung
-
AttributeCollection
- Attribute
- Implementiert
Beispiele
Im ersten Codebeispiel wird überprüft, ob in BrowsableAttribute dieser Auflistung festgelegt wurde. Im zweiten Codebeispiel wird der tatsächliche Wert von DescriptionAttribute für eine Schaltfläche abgerufen. Beide Beispiele erfordern, dass button1
und textBox1
auf einem Formular erstellt wurden. Wenn Sie Attribute verwenden, überprüfen Sie, ob ein Attribut festgelegt wurde, oder greifen Sie auf dessen Wert zu.
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
Hinweise
Die AttributeCollection -Klasse ist schreibgeschützt. Sie implementiert keine Methoden zum Hinzufügen oder Entfernen von Attributen. Sie müssen von dieser Klasse erben, um diese Methoden zu implementieren.
Verwenden Sie die Count -Eigenschaft, um die Anzahl der Attribute zu ermitteln, die in der Auflistung vorhanden sind.
Sie können auch die Methoden dieser Klasse verwenden, um den Inhalt der Auflistung abzufragen. Rufen Sie die Contains -Methode auf, um zu überprüfen, ob ein angegebenes Attribut oder Attributarray in der Auflistung vorhanden ist. Rufen Sie die Matches -Methode auf, um zu überprüfen, ob ein angegebenes Attribut oder Array von Attributen in der Auflistung vorhanden ist und dass die Werte der angegebenen Attribute mit den Werten in der Auflistung übereinstimmen.
Obwohl die meisten Attribute Standardwerte aufweisen, sind keine Standardwerte erforderlich. Wenn ein Attribut keinen Standardwert aufweist, null
wird von der indizierten Eigenschaft zurückgegeben, die einen Typ annimmt. Beim Definieren eigener Attribute können Sie einen Standardwert deklarieren, indem Sie entweder einen Konstruktor bereitstellen, der keine Argumente akzeptiert, oder indem Sie ein öffentliches statisches Feld Ihres Attributtyps namens "Default" definieren.
Konstruktoren
AttributeCollection() |
Initialisiert eine neue Instanz der AttributeCollection-Klasse. |
AttributeCollection(Attribute[]) |
Initialisiert eine neue Instanz der AttributeCollection-Klasse. |
Felder
Empty |
Gibt eine leere Auflistung an, die Sie verwenden können, um so keine neue Auflistung erstellen zu müssen. Dieses Feld ist schreibgeschützt. |
Eigenschaften
Attributes |
Ruft die Attributauflistung ab. |
Count |
Ruft die Anzahl der Attribute ab. |
Item[Int32] |
Ruft das Attribut mit der angegebenen Indexnummer ab. |
Item[Type] |
Ruft das Attribut mit dem angegebenen Typ ab. |
Methoden
Contains(Attribute) |
Bestimmt, ob das angegebene Attribut in dieser Auflistung von Attributen enthalten ist. |
Contains(Attribute[]) |
Bestimmt, ob diese Auflistung von Attributen sämtliche angegebenen Attribute im Attributarray enthält. |
CopyTo(Array, Int32) |
Kopiert die Auflistung in ein Array, wobei am angegebenen Index begonnen wird. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
FromExisting(AttributeCollection, Attribute[]) |
Erstellt eine neue AttributeCollection-Klasse aus einer vorhandenen AttributeCollection-Klasse. |
GetDefaultAttribute(Type) |
Gibt die Attribute-Standardklasse einer bestimmten Type-Klasse zurück. |
GetEnumerator() |
Ruft einen Enumerator für diese Auflistung ab. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
Matches(Attribute) |
Bestimmt, ob ein angegebenes Attribut mit einem Attribut in der Auflistung identisch ist. |
Matches(Attribute[]) |
Bestimmt, ob die Attribute im angegebenen Array mit den Attributen in der Auflistung identisch sind. |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
ICollection.Count |
Ruft die Anzahl der Elemente in der Auflistung ab. |
ICollection.IsSynchronized |
Ruft einen Wert ab, der angibt, ob der Zugriff auf die Auflistung synchronisiert (threadsicher) ist. |
ICollection.SyncRoot |
Ruft ein Objekt ab, mit dem der Zugriff auf die Auflistung synchronisiert werden kann. |
IEnumerable.GetEnumerator() |
Gibt einen IEnumerator für das IDictionaryzurück. |
Erweiterungsmethoden
Cast<TResult>(IEnumerable) |
Wandelt die Elemente eines IEnumerable in den angegebenen Typ um |
OfType<TResult>(IEnumerable) |
Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs |
AsParallel(IEnumerable) |
Ermöglicht die Parallelisierung einer Abfrage. |
AsQueryable(IEnumerable) |
Konvertiert einen IEnumerable in einen IQueryable. |