Freigeben über


BindableAttribute Klasse

Definition

Gibt an, ob ein Member normalerweise für Bindungen verwendet wird. Diese Klasse kann nicht vererbt werden.

public ref class BindableAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class BindableAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All)>]
type BindableAttribute = class
    inherit Attribute
Public NotInheritable Class BindableAttribute
Inherits Attribute
Vererbung
BindableAttribute
Attribute

Beispiele

Im folgenden Codebeispiel wird eine Eigenschaft markiert, an die Daten gebunden werden können.

property int MyProperty 
{
   [System::ComponentModel::Bindable(true)]
   int get()
   {
      // Insert code here.
      return 0;
   }

   [System::ComponentModel::Bindable(true)]
   void set( int )
   {
      // Insert code here.
   }
}
[Bindable(true)]
 public int MyProperty {
    get {
       // Insert code here.
       return 0;
    }
    set {
       // Insert code here.
    }
 }
<Bindable(True)> _
Public Property MyProperty() As Integer
    Get
        ' Insert code here.
        Return 0
    End Get
    Set
         ' Insert code here.
    End Set
End Property

Im nächsten Codebeispiel wird gezeigt, wie der Wert von für MyPropertyüberprüft wirdBindableAttribute. Zunächst ruft der Code einen PropertyDescriptorCollection mit allen Eigenschaften für das -Objekt ab. Als Nächstes wird der Code indiziert PropertyDescriptorCollection , um abzurufen MyProperty. Schließlich gibt der Code die Attribute für diese Eigenschaft zurück und speichert sie in der Variablen attributes. Im Codebeispiel werden zwei verschiedene Möglichkeiten zum Überprüfen des Werts von BindableAttributedargestellt. Im zweiten Codefragment ruft das Beispiel die Equals -Methode auf. Im letzten Codefragment wird im Beispiel die Bindable -Eigenschaft verwendet, um den Wert zu überprüfen.

using namespace System::ComponentModel;

// Gets the attributes for the property.
AttributeCollection^ attributes = TypeDescriptor::GetProperties( this )[ "MyProperty" ]->Attributes;

// Checks to see if the value of the BindableAttribute is Yes.
if ( attributes[ BindableAttribute::typeid ]->Equals( BindableAttribute::Yes ) )
{
   // Insert code here.
}

// This is another way to see whether the property is bindable.
BindableAttribute^ myAttribute = static_cast<BindableAttribute^>(attributes[ BindableAttribute::typeid ]);
if ( myAttribute->Bindable )
{
   // Insert code here.
}

// Yet another way to see whether the property is bindable.
if ( attributes->Contains( BindableAttribute::Yes ) )
{
   // Insert code here.
}
   // Gets the attributes for the property.
    AttributeCollection attributes =
       TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;

    // Checks to see if the value of the BindableAttribute is Yes.
    if(attributes[typeof(BindableAttribute)].Equals(BindableAttribute.Yes)) {
       // Insert code here.
    }

    // This is another way to see whether the property is bindable.
    BindableAttribute myAttribute =
       (BindableAttribute)attributes[typeof(BindableAttribute)];
    if(myAttribute.Bindable) {
       // Insert code here.
    }

// Yet another way to see whether the property is bindable.
if (attributes.Contains(BindableAttribute.Yes)) {
   // Insert code here.
}
    ' Gets the attributes for the property.
    Dim attributes As AttributeCollection = _
        TypeDescriptor.GetProperties(Me)("MyProperty").Attributes
    
    ' Checks to see if the value of the BindableAttribute is Yes.
    If attributes(GetType(BindableAttribute)).Equals(BindableAttribute.Yes) Then
        ' Insert code here.
    End If 
    
    ' This is another way to see whether the property is bindable.
    Dim myAttribute As BindableAttribute = _
        CType(attributes(GetType(BindableAttribute)), BindableAttribute)
    If myAttribute.Bindable Then
        ' Insert code here.
    End If 

' Yet another way to see whether the property is bindable.
If attributes.Contains(BindableAttribute.Yes) Then
' Insert code here.
End If

Wenn Sie eine Klasse mit markiert haben BindableAttribute, verwenden Sie das folgende Codebeispiel, um den Wert zu überprüfen.

using namespace System::ComponentModel;
AttributeCollection^ attributes = TypeDescriptor::GetAttributes( MyProperty );
if ( attributes[ BindableAttribute::typeid ]->Equals( BindableAttribute::Yes ) )
{
   // Insert code here.
}
AttributeCollection attributes =
    TypeDescriptor.GetAttributes(MyProperty);
 if(attributes[typeof(BindableAttribute)].Equals(BindableAttribute.Yes)) {
    // Insert code here.
 }
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
If attributes(GetType(BindableAttribute)).Equals(BindableAttribute.Yes) Then
    ' Insert code here.
End If

Hinweise

Sie können dieses Attribut für mehrere Member (in der Regel Eigenschaften) für ein Steuerelement angeben.

Wenn eine Eigenschaft mit auf BindableAttribute markiert truewurde, sollte für diese Eigenschaft eine Benachrichtigung zur Änderung der Eigenschaft ausgelöst werden. Dies bedeutet, dass die bidirektionale Datenbindung unterstützt wird, wenn die Bindable -Eigenschaft ist Yes. NoWenn Bindable ist, können Sie weiterhin an die -Eigenschaft binden, aber sie sollte nicht im Standardsatz von Eigenschaften angezeigt werden, an die gebunden werden soll, da sie möglicherweise eine Benachrichtigung über Eigenschaftenänderungen auslösen oder nicht.

Hinweis

Wenn Sie eine Eigenschaft mit BindableAttribute festgelegt auf truemarkieren, wird der Wert dieses Attributs auf den konstanten Member Yesfestgelegt. Für eine Eigenschaft, die BindableAttribute mit auf gekennzeichnet falseist, ist Noder Wert . Daher müssen Sie das Attribut als BindableAttribute.Yes oder BindableAttribute.Noangeben, um den Wert dieses Attributs in Ihrem Code zu überprüfen.

Achtung

Sie können dieses Attribut nur zur Entwurfszeit verwenden. Nichts hindert Sie daran, während der Laufzeit an eine Eigenschaft zu binden.

Weitere Informationen finden Sie unter Attribute.

Konstruktoren

BindableAttribute(BindableSupport)

Initialisiert eine neue Instanz der BindableAttribute-Klasse mit einem der BindableSupport-Werte.

BindableAttribute(BindableSupport, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute-Klasse.

BindableAttribute(Boolean)

Initialisiert eine neue Instanz der BindableAttribute-Klasse mit einem booleschen Wert.

BindableAttribute(Boolean, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute-Klasse.

Felder

Default

Gibt den Standardwert für das BindableAttribute an, der No ist. Dieses Feld ist schreibgeschützt.

No

Gibt an, dass eine Eigenschaft normalerweise nicht für Bindungen verwendet wird. Dieses Feld ist schreibgeschützt.

Yes

Gibt an, dass eine Eigenschaft normalerweise für Bindungen verwendet wird. Dieses Feld ist schreibgeschützt.

Eigenschaften

Bindable

Ruft einen Wert ab, der angibt, dass eine Eigenschaft normalerweise für Bindungen verwendet wird.

Direction

Ruft einen Wert ab, der die Richtung bzw. Richtungen der Datenbindung dieser Eigenschaft angibt.

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)

Methoden

Equals(Object)

Bestimmt, ob zwei BindableAttribute-Objekte gleich sind.

GetHashCode()

Fungiert als eine Hashfunktion für die BindableAttribute-Klasse.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Bestimmt, ob dieses Attribut der Standardwert ist.

Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
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

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen