AttributeCollection Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta una raccolta di attributi.
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
- Ereditarietà
-
AttributeCollection
- Attributi
- Implementazioni
Esempio
Il primo esempio di codice controlla se è BrowsableAttribute stato impostato in questa raccolta. Il secondo esempio di codice ottiene il valore effettivo di DescriptionAttribute per un pulsante. Entrambi gli esempi richiedono che button1
e textBox1
siano stati creati in un modulo. Quando si usano attributi, verificare che sia stato impostato un attributo o accedervi.
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
Commenti
La AttributeCollection classe è di sola lettura e non implementa metodi per aggiungere o rimuovere attributi. Per implementare questi metodi, è necessario ereditare da questa classe.
Utilizzare la Count proprietà per trovare il numero di attributi presenti nell'insieme.
È anche possibile utilizzare i metodi di questa classe per eseguire una query sulla raccolta relativa al relativo contenuto. Chiamare il Contains metodo per verificare che nella raccolta esista un attributo o una matrice di attributi specificata. Chiamare il Matches metodo per verificare che nell'insieme esista un attributo o una matrice di attributi specificati e che i valori degli attributi specificati corrispondano ai valori dell'insieme.
Anche se la maggior parte degli attributi ha valori predefiniti, i valori predefiniti non sono obbligatori. Se un attributo non ha alcun valore predefinito, null
viene restituito dalla proprietà indicizzata che accetta un tipo. Quando si definiscono attributi personalizzati, è possibile dichiarare un valore predefinito fornendo un costruttore che non accetta argomenti o definendo un campo statico pubblico del tipo di attributo denominato "Default".
Costruttori
AttributeCollection() |
Inizializza una nuova istanza della classe AttributeCollection. |
AttributeCollection(Attribute[]) |
Inizializza una nuova istanza della classe AttributeCollection. |
Campi
Empty |
Specifica un insieme vuoto da utilizzare invece di crearne uno nuovo. Questo campo è di sola lettura. |
Proprietà
Attributes |
Ottiene l'insieme di attributi. |
Count |
Ottiene il numero di attributi. |
Item[Int32] |
Ottiene l'attributo con il numero di indice specificato. |
Item[Type] |
Ottiene l'attributo con il tipo specificato. |
Metodi
Contains(Attribute) |
Consente di determinare se questo insieme di attributi dispone dell'attributo specificato. |
Contains(Attribute[]) |
Consente di determinare se questo insieme di attributi contiene tutti gli attributi specificati nella matrice di attributi. |
CopyTo(Array, Int32) |
Consente di copiare l'insieme in una matrice partendo dall'indice specificato. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
FromExisting(AttributeCollection, Attribute[]) |
Crea un nuovo insieme AttributeCollection da un insieme AttributeCollection esistente. |
GetDefaultAttribute(Type) |
Restituisce l'oggetto Attribute predefinito di un dato oggetto Type. |
GetEnumerator() |
Ottiene un enumeratore per questo insieme. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Matches(Attribute) |
Consente di determinare se un attributo specificato è uguale a un attributo nell'insieme. |
Matches(Attribute[]) |
Consente di determinare se gli attributi nella matrice specificata sono uguali agli attributi dell'insieme. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
ICollection.Count |
Ottiene il numero di elementi contenuti nella raccolta. |
ICollection.IsSynchronized |
Ottiene un valore che indica se l'accesso alla raccolta è sincronizzato (thread-safe). |
ICollection.SyncRoot |
Ottiene un oggetto che può essere usato per sincronizzare l'accesso alla raccolta. |
IEnumerable.GetEnumerator() |
Restituisce IEnumerator per IDictionary. |
Metodi di estensione
Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato. |
OfType<TResult>(IEnumerable) |
Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato. |
AsParallel(IEnumerable) |
Consente la parallelizzazione di una query. |
AsQueryable(IEnumerable) |
Converte un oggetto IEnumerable in un oggetto IQueryable. |