AttributeCollection.Matches Metodo

Definizione

Consente di determinare se un attributo o una matrice di attributi specificata coincidono con l'attributo o la matrice di attributi presenti nell'insieme.Determines whether a specified attribute or array of attributes is the same as an attribute or array of attributes in the collection.

Overload

Matches(Attribute)

Consente di determinare se un attributo specificato è uguale a un attributo nell'insieme.Determines whether a specified attribute is the same as an attribute in the collection.

Matches(Attribute[])

Consente di determinare se gli attributi nella matrice specificata sono uguali agli attributi dell'insieme.Determines whether the attributes in the specified array are the same as the attributes in the collection.

Matches(Attribute)

Consente di determinare se un attributo specificato è uguale a un attributo nell'insieme.Determines whether a specified attribute is the same as an attribute in the collection.

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

Parametri

attribute
Attribute

Istanza di Attribute da confrontare con gli attributi in questo insieme.An instance of Attribute to compare with the attributes in this collection.

Restituisce

true se l'attributo è contenuto nell'insieme e presenta lo stesso valore dell'attributo nell'insieme. In caso contrario, false.true if the attribute is contained within the collection and has the same value as the attribute in the collection; otherwise, false.

Esempio

Nell'esempio di codice seguente viene verificato che il BrowsableAttribute sia un membro della raccolta e che sia stato impostato su true.The following code example verifies that the BrowsableAttribute is a member of the collection and that it has been set to true. Si presuppone che button1 e textBox1 siano stati creati in un modulo.It assumes that button1 and textBox1 have been created on a form.

private:
   void MatchesAttribute()
   {
      // Creates a new collection and assigns it the attributes for button1.
      AttributeCollection^ attributes;
      attributes = TypeDescriptor::GetAttributes( button1 );
      
      // Checks to see if the browsable attribute is true.
      if ( attributes->Matches( BrowsableAttribute::Yes ) )
      {
         textBox1->Text = "button1 is browsable.";
      }
      else
      {
         textBox1->Text = "button1 is not browsable.";
      }
   }
private void MatchesAttribute() {
    // Creates a new collection and assigns it the attributes for button1.
    AttributeCollection attributes;
    attributes = TypeDescriptor.GetAttributes(button1);
 
    // Checks to see if the browsable attribute is true.
    if (attributes.Matches(BrowsableAttribute.Yes))
       textBox1.Text = "button1 is browsable.";
    else
       textBox1.Text = "button1 is not browsable.";
 }

Private Sub MatchesAttribute
    ' Creates a new collection and assigns it the attributes for button
    Dim attributes As AttributeCollection
    attributes = TypeDescriptor.GetAttributes(button1)

    ' Checks to see if the browsable attribute is true.
    If attributes.Matches(BrowsableAttribute.Yes) Then
        textBox1.Text = "button1 is browsable."
    Else
        textBox1.Text = "button1 is not browsable."
    End If
End Sub

Commenti

Un attributo può fornire supporto per la corrispondenza.An attribute can provide support for matching.

La differenza tra i metodi Matches e Contains è che Matches chiama il metodo Match su un attributo e Contains chiama il metodo 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.

Per la maggior parte degli attributi, questi metodi eseguono la stessa operazione.For most attributes, these methods do the same thing. Per gli attributi che possono avere più flag, tuttavia, Match viene in genere implementato in modo che restituisca true se uno dei flag viene soddisfatto.For attributes that may have multiple flags, however, Match is typically implemented so that it returns true if any of the flags are satisfied. Si consideri, ad esempio, un data binding attributo con i flag booleani "SupportsSql", "SupportsOleDb" e "SupportsXml".For example, consider a data binding attribute with the Boolean flags "SupportsSql", "SupportsOleDb", and "SupportsXml". Questo attributo può essere presente in una proprietà che supporta i tre approcci data binding.This attribute may be present on a property that supports all three data binding approaches. Spesso è necessario che un programmatore conosca solo se è disponibile un particolare approccio, non tutti e tre.It will often be the case that a programmer needs to know only if a particular approach is available, not all three. Pertanto, un programmatore può utilizzare Match con un'istanza dell'attributo che contiene solo i flag necessari al programmatore.Therefore, a programmer could use Match with an instance of the attribute containing only the flags the programmer needs.

Vedi anche

Matches(Attribute[])

Consente di determinare se gli attributi nella matrice specificata sono uguali agli attributi dell'insieme.Determines whether the attributes in the specified array are the same as the attributes in the collection.

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

Parametri

attributes
Attribute[]

Matrice di MemberAttributes da confrontare con gli attributi in questo insieme.An array of MemberAttributes to compare with the attributes in this collection.

Restituisce

true se tutti gli attributi della matrice sono contenuti nell'insieme e presentano gli stessi valori degli attributi nell'insieme. In caso contrario, false.true if all the attributes in the array are contained in the collection and have the same values as the attributes in the collection; otherwise, false.

Esempio

Nell'esempio di codice seguente vengono confrontati gli attributi in un pulsante e una casella di testo per verificare se corrispondono.The following code example compares the attributes in a button and a text box to see whether they match. Si presuppone che button1 e textBox1 siano stati creati in un modulo.It assumes that button1 and textBox1 have been created on a form.

private:
   void MatchesAttributes()
   {
      // 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 match the attributes for textBox1.
      array<Attribute^>^ myAttrArray = gcnew array<Attribute^>(100);
      TypeDescriptor::GetAttributes( textBox1 )->CopyTo( myAttrArray, 0 );
      if ( myCollection->Matches( myAttrArray ) )
      {
         textBox1->Text = "The attributes in the button and text box match.";
      }
      else
      {
         textBox1->Text = "The attributes in the button and text box do not match.";
      }
   }
private void MatchesAttributes() {
   // 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 match the attributes for textBox1.
   Attribute[] myAttrArray = new Attribute[100];
   TypeDescriptor.GetAttributes(textBox1).CopyTo(myAttrArray, 0);
   if (myCollection.Matches(myAttrArray))
      textBox1.Text = "The attributes in the button and text box match.";
   else
      textBox1.Text = "The attributes in the button and text box do not match.";
}
Private Sub MatchesAttributes()
    ' 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 match the attributes.
    ' for textBox1.
    Dim myAttrArray(100) As Attribute
    TypeDescriptor.GetAttributes(textBox1).CopyTo(myAttrArray, 0)
    If myCollection.Matches(myAttrArray) Then
        textBox1.Text = "The attributes in the button and text box match."
    Else
        textBox1.Text = "The attributes in the button and text box do not match."
    End If
End Sub

Commenti

Un attributo può fornire supporto per la corrispondenza.An attribute can provide support for matching.

Vedi anche

Si applica a