BindableAttribute Klas

Definitie

Hiermee geeft u op of een lid doorgaans wordt gebruikt voor binding. Deze klasse kan niet worden overgenomen.

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
Overname
BindableAttribute
Kenmerken

Voorbeelden

In het volgende codevoorbeeld wordt een eigenschap gemarkeerd die van toepassing is om gegevens aan te binden.

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.
        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

In het volgende codevoorbeeld ziet u hoe u de waarde van de BindableAttribute for MyPropertykunt controleren. Eerst krijgt de code een PropertyDescriptorCollection met alle eigenschappen voor het object. Vervolgens worden de code-indexen in de PropertyDescriptorCollection code geïndexeert om op te halen MyProperty. Ten slotte retourneert de code de kenmerken voor deze eigenschap en slaat deze op in de kenmerkvariabele. In het codevoorbeeld ziet u twee verschillende manieren om de waarde van de BindableAttribute. In het tweede codefragment roept het voorbeeld de methode aan Equals . In het laatste codefragment gebruikt het voorbeeld de Bindable eigenschap om de waarde te controleren.

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

Als u een klasse met de BindableAttributeklasse hebt gemarkeerd, gebruikt u het volgende codevoorbeeld om de waarde te controleren.

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

Opmerkingen

U kunt dit kenmerk opgeven voor meerdere leden, meestal eigenschappen, op een besturingselement.

Als een eigenschap is gemarkeerd met de set waarop truedeze BindableAttribute is ingesteld, moet er een melding voor eigenschapswijziging worden gegenereerd voor die eigenschap. Dit betekent dat als de Bindable eigenschap is Yes, gegevensbinding in twee richtingen wordt ondersteund. Als Bindable dat het geval is No, kunt u nog steeds verbinding maken met de eigenschap, maar deze mag niet worden weergegeven in de standaardset eigenschappen waaraan moet worden gekoppeld, omdat er mogelijk of niet een melding over het wijzigen van een eigenschap wordt weergegeven.

Opmerking

Wanneer u een eigenschap markeert waarop BindableAttribute is ingesteld true, wordt de waarde van dit kenmerk ingesteld op het constante lid Yes. Voor een eigenschap die is gemarkeerd met de BindableAttribute set op false, is Node waarde . Als u daarom de waarde van dit kenmerk in uw code wilt controleren, moet u het kenmerk opgeven als BindableAttribute.Yes of BindableAttribute.No.

Caution

U kunt dit kenmerk alleen gebruiken tijdens het ontwerp. Niets voorkomt dat u tijdens runtime een binding met een eigenschap kunt maken.

Zie Kenmerken voor meer informatie.

Constructors

Name Description
BindableAttribute(BindableSupport, BindingDirection)

Initialiseert een nieuw exemplaar van de BindableAttribute klasse.

BindableAttribute(BindableSupport)

Initialiseert een nieuw exemplaar van de BindableAttribute klasse met een van de BindableSupport waarden.

BindableAttribute(Boolean, BindingDirection)

Initialiseert een nieuw exemplaar van de BindableAttribute klasse.

BindableAttribute(Boolean)

Initialiseert een nieuw exemplaar van de BindableAttribute klasse met een Booleaanse waarde.

Velden

Name Description
Default

Hiermee geeft u de standaardwaarde voor de BindableAttribute, die is No. Dit veld is alleen-lezen.

No

Hiermee geeft u op dat een eigenschap doorgaans niet wordt gebruikt voor binding. Dit veld is alleen-lezen.

Yes

Hiermee geeft u op dat een eigenschap doorgaans wordt gebruikt voor binding. Dit veld is alleen-lezen.

Eigenschappen

Name Description
Bindable

Hiermee wordt een waarde opgehaald die aangeeft dat een eigenschap doorgaans wordt gebruikt voor binding.

Direction

Hiermee wordt een waarde opgehaald die de richting of richting van de gegevensbinding van deze eigenschap aangeeft.

TypeId

Wanneer deze wordt geïmplementeerd in een afgeleide klasse, krijgt u Attributehiervoor een unieke id.

(Overgenomen van Attribute)

Methoden

Name Description
Equals(Object)

Bepaalt of twee BindableAttribute objecten gelijk zijn.

GetHashCode()

Fungeert als een hash-functie voor de BindableAttribute klasse.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IsDefaultAttribute()

Bepaalt of dit kenmerk de standaardwaarde is.

Match(Object)

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een waarde geretourneerd die aangeeft of dit exemplaar gelijk is aan een opgegeven object.

(Overgenomen van Attribute)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

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

Hiermee wordt een set namen toegewezen aan een bijbehorende set verzend-id's.

(Overgenomen van Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Hiermee haalt u de typegegevens voor een object op, die kan worden gebruikt om de typegegevens voor een interface op te halen.

(Overgenomen van Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Hiermee wordt het aantal type-informatieinterfaces opgehaald dat een object biedt (0 of 1).

(Overgenomen van Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Biedt toegang tot eigenschappen en methoden die door een object worden weergegeven.

(Overgenomen van Attribute)

Van toepassing op

Zie ook