BindableAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie si un membre est généralement utilisé pour la liaison. Cette classe ne peut pas être héritée.
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
- Héritage
- Attributs
Exemples
L’exemple de code suivant marque une propriété comme il convient pour lier des données.
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
L’exemple de code suivant montre comment vérifier la valeur de la BindableAttribute valeur pour MyProperty. Tout d’abord, le code obtient une PropertyDescriptorCollection valeur avec toutes les propriétés de l’objet. Ensuite, le code indexe dans l’obtention PropertyDescriptorCollectionMyProperty. Enfin, le code retourne les attributs de cette propriété et les enregistre dans la variable d’attributs. L’exemple de code présente deux façons différentes de vérifier la valeur du BindableAttribute. Dans le deuxième fragment de code, l’exemple appelle la Equals méthode. Dans le dernier fragment de code, l’exemple utilise la Bindable propriété pour vérifier la valeur.
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
Si vous avez marqué une classe avec le BindableAttributecode suivant, utilisez l’exemple de code suivant pour vérifier la valeur.
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
Remarques
Vous pouvez spécifier cet attribut pour plusieurs membres, généralement des propriétés, sur un contrôle.
Si une propriété a été marquée avec la BindableAttribute valeur définie true, une notification de modification de propriété doit être déclenchée pour cette propriété. Cela signifie que si la Bindable propriété est Yes, la liaison de données bidirectionnelle est prise en charge. Si Bindable c’est Nole cas, vous pouvez toujours lier à la propriété, mais il ne doit pas être affiché dans l’ensemble par défaut de propriétés à lier, car il peut ou non déclencher une notification de modification de propriété.
Note
Lorsque vous marquez une propriété avec BindableAttributetruela valeur définie, la valeur de cet attribut est définie sur le membre Yesconstant. Pour une propriété marquée avec la BindableAttribute valeur définie false, la valeur est No. Par conséquent, pour vérifier la valeur de cet attribut dans votre code, vous devez spécifier l’attribut en tant que BindableAttribute.Yes ou BindableAttribute.No.
Avertissement
Vous pouvez utiliser cet attribut au moment du design uniquement. Rien ne vous empêche de vous lier à une propriété pendant l’exécution.
Pour plus d’informations, consultez Attributs.
Constructeurs
| Nom | Description |
|---|---|
| BindableAttribute(BindableSupport, BindingDirection) |
Initialise une nouvelle instance de la classe BindableAttribute. |
| BindableAttribute(BindableSupport) |
Initialise une nouvelle instance de la BindableAttribute classe avec l’une BindableSupport des valeurs. |
| BindableAttribute(Boolean, BindingDirection) |
Initialise une nouvelle instance de la classe BindableAttribute. |
| BindableAttribute(Boolean) |
Initialise une nouvelle instance de la BindableAttribute classe avec une valeur booléenne. |
Champs
| Nom | Description |
|---|---|
| Default |
Spécifie la valeur par défaut pour le BindableAttribute.No Ce champ est en lecture seule. |
| No |
Spécifie qu’une propriété n’est généralement pas utilisée pour la liaison. Ce champ est en lecture seule. |
| Yes |
Spécifie qu’une propriété est généralement utilisée pour la liaison. Ce champ est en lecture seule. |
Propriétés
| Nom | Description |
|---|---|
| Bindable |
Obtient une valeur indiquant qu’une propriété est généralement utilisée pour la liaison. |
| Direction |
Obtient une valeur indiquant la direction ou les directions de la liaison de données de cette propriété. |
| TypeId |
En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute. (Hérité de Attribute) |
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Détermine si deux BindableAttribute objets sont égaux. |
| GetHashCode() |
Sert de fonction de hachage pour la BindableAttribute classe. |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| IsDefaultAttribute() |
Détermine si cet attribut est la valeur par défaut. |
| Match(Object) |
En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de Attribute) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface. (Hérité de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l’accès aux propriétés et méthodes exposées par un objet. (Hérité de Attribute) |