AttributeCollection.Contains Método

Definición

Determina si esta colección de atributos tiene el atributo o la matriz de atributos especificados.Determines whether this collection of attributes has the specified attribute or array of attributes.

Sobrecargas

Contains(Attribute)

Determina si esta colección de atributos tiene el atributo especificado.Determines whether this collection of attributes has the specified attribute.

Contains(Attribute[])

Determina si esta colección de atributos contiene todos los atributos especificados en la matriz de atributos.Determines whether this attribute collection contains all the specified attributes in the attribute array.

Contains(Attribute)

Determina si esta colección de atributos tiene el atributo especificado.Determines whether this collection of attributes has the specified attribute.

public:
 bool Contains(Attribute ^ attribute);
public bool Contains (Attribute attribute);
member this.Contains : Attribute -> bool

Parámetros

attribute
Attribute

Attribute que se buscará en la colección.An Attribute to find in the collection.

Devoluciones

true si la colección contiene el atributo o es el atributo predeterminado del tipo de atributo; en caso contrario, false.true if the collection contains the attribute or is the default attribute for the type of attribute; otherwise, false.

Ejemplos

En el ejemplo de código siguiente se comprueba si la colección tiene una BrowsableAttribute establecida en true.The following code example checks to see whether the collection has a BrowsableAttribute set to true. Se supone que se han creado button1 y textBox1 en un formulario.It assumes that button1 and textBox1 have been created on a form.

protected:
   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 button.
    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

Comentarios

Esta colección tiene el atributo especificado si el tipo de atributo especificado existe en la colección y si el valor del atributo especificado es el mismo que el valor de la instancia del atributo de la colección.This collection has the specified attribute if the specified type of attribute exists in the collection, and if the value of the specified attribute is the same as the value of the instance of the attribute in the collection.

La diferencia entre los métodos Matches y Contains es que Matches llama al método Match en un atributo y Contains llama al método Equals.The difference between the Matches and Contains methods is that Matches calls the Match method on an attribute, and Contains calls the Equals method.

Para la mayoría de los atributos, estos métodos hacen lo mismo.For most attributes, these methods do the same thing. En el caso de los atributos que pueden tener varias marcas, sin embargo, Match se implementa normalmente para que devuelva true si se cumple alguna de las marcas.For attributes that may have multiple flags, however, Match is typically implemented so that it returns true if any of the flags are satisfied. Por ejemplo, considere un atributo de enlace de datos con las marcas booleanas "SupportsSql", "SupportsOleDb" y "SupportsXml".For example, consider a data binding attribute with the Boolean flags "SupportsSql", "SupportsOleDb", and "SupportsXml". Este atributo puede estar presente en una propiedad que admita los tres métodos de enlace de datos.This attribute may be present on a property that supports all three data-binding approaches. Suele ser el caso de que un programador solo necesite saber si un enfoque determinado está disponible, no los tres.It will often be the case that a programmer needs to know only if a particular approach is available, not all three. Por lo tanto, un programador podría usar Match con una instancia del atributo que contenga solo las marcas que necesita el programador.Therefore, a programmer could use Match with an instance of the attribute containing only the flags the programmer needs.

Consulte también:

Contains(Attribute[])

Determina si esta colección de atributos contiene todos los atributos especificados en la matriz de atributos.Determines whether this attribute collection contains all the specified attributes in the attribute array.

public:
 bool Contains(cli::array <Attribute ^> ^ attributes);
public bool Contains (Attribute[] attributes);
member this.Contains : Attribute[] -> bool
Public Function Contains (attributes As Attribute()) As Boolean

Parámetros

attributes
Attribute[]

Matriz de tipo Attribute que se buscará en la colección.An array of type Attribute to find in the collection.

Devoluciones

true si la colección contiene todos los atributos; en caso contrario, false.true if the collection contains all the attributes; otherwise, false.

Ejemplos

En el ejemplo de código siguiente se comparan los atributos de button1 y textBox1 para ver si los atributos del botón están contenidos en los atributos del cuadro de texto.The following code example compares the attributes in button1 and textBox1 to see whether the attributes for the button are contained in the attributes for the text box. Se supone que se han creado button1 y textBox1 en un formulario.It assumes that both button1 and textBox1 have been created on a form.

private:
   void ContainsAttributes()
   {
      // Creates a new collection and assigns it the attributes for button1.
      AttributeCollection^ myCollection;
      myCollection = TypeDescriptor::GetAttributes( button1 );
      
      // Checks to see whether the attributes in myCollection are the attributes for textBox1.
      array<Attribute^>^ myAttrArray = gcnew array<Attribute^>(100);
      TypeDescriptor::GetAttributes( textBox1 )->CopyTo( myAttrArray, 0 );
      if ( myCollection->Contains( myAttrArray ) )
      {
         textBox1->Text = "Both the button and text box have the same attributes.";
      }
      else
      {
         textBox1->Text = "The button and the text box do not have the same attributes.";
      }
   }
private void ContainsAttributes() {
   // Creates a new collection and assigns it the attributes for button1.
   AttributeCollection myCollection;
   myCollection = TypeDescriptor.GetAttributes(button1);    

   // Checks to see whether the attributes in myCollection are the attributes for textBox1.
   Attribute[] myAttrArray = new Attribute[100];
   TypeDescriptor.GetAttributes(textBox1).CopyTo(myAttrArray, 0);
   if (myCollection.Contains(myAttrArray))
      textBox1.Text = "Both the button and text box have the same attributes.";
   else
      textBox1.Text = "The button and the text box do not have the same attributes.";
}
Private Sub ContainsAttributes()
    ' Creates a new collection and assigns it the attributes for button1.
    Dim myCollection As AttributeCollection
    myCollection = TypeDescriptor.GetAttributes(button1)
      
    ' Checks to see whether the attributes in myCollection are the attributes for textBox1.
    Dim myAttrArray(100) As Attribute
    TypeDescriptor.GetAttributes(textBox1).CopyTo(myAttrArray, 0)
    If myCollection.Contains(myAttrArray) Then
        textBox1.Text = "Both the button and text box have the same attributes."
    Else
        textBox1.Text = "The button and the text box do not have the same attributes."
    End If
End Sub

Comentarios

Esta colección tiene la matriz de atributos especificada si todos los tipos de atributo especificados existen en la colección y si cada atributo de la matriz especificada es igual que un atributo de la colección.This collection has the specified array of attributes if all the specified attribute types exist in the collection and if each attribute in the specified array is the same as an attribute in the collection.

Consulte también:

Se aplica a