Binding Classe

Définition

Fournit un accès de haut niveau à la définition d’une liaison, qui connecte les propriétés d’objets cible de liaison (en général, des éléments WPF) et d’une source de données quelconque (par exemple, une base de données, un fichier XML ou tout objet contenant des données).

public ref class Binding : System::Windows::Data::BindingBase
public class Binding : System.Windows.Data.BindingBase
type Binding = class
    inherit BindingBase
Public Class Binding
Inherits BindingBase
Héritage

Remarques

La liaison de données Windows Presentation Foundation (WPF) offre un moyen simple et cohérent pour les applications de présenter et d’interagir avec les données. La liaison de données vous permet de synchroniser les valeurs des propriétés de deux objets différents.

Pour établir une liaison, utilisez la Binding classe ou l’une des autres classes qui héritent BindingBasede . Quel que soit l’objet que vous liez et la nature de votre source de données, chaque liaison suit le modèle illustré par la figure suivante.

Diagramme de liaison de données

La figure illustre les concepts de liaison de données WPF fondamentaux suivants.

  • Chaque liaison a généralement ces quatre composants : un objet cible de liaison, une propriété cible, une source de liaison et une Path à la valeur dans la source de liaison à utiliser. Par exemple, si vous souhaitez lier le contenu d’un TextBox objet à la propriété Name d’un objet Employee, votre objet cible est , TextBoxla propriété cible est la Text propriété, la valeur à utiliser est Name et l’objet source est l’objet Employee.

  • La propriété cible doit être une propriété de dépendance. Cela signifie également que vous ne pouvez pas lier un champ. La plupart des propriétés des objets sont des propriétés de UIElement dépendance et la plupart des propriétés de dépendance, à l’exception des propriétés en lecture seule, prennent en charge la liaison de données par défaut. (Seuls les DependencyObject types peuvent définir des propriétés de dépendance et tous les UIElement objets dérivent de DependencyObject.)

  • Bien que non spécifié dans la figure, il convient de noter que l’objet source de liaison n’est pas limité à être un objet CLR personnalisé. La liaison de données WPF prend en charge les données sous la forme d’objets CLR et de XML. Pour fournir quelques exemples, votre source de liaison peut être un UIElementobjet de liste, un objet CLR associé à des données ADO.NET ou des services web, ou un XmlNode qui contient vos données XML.

Utilisez la Mode propriété pour spécifier la direction du flux de données. Pour détecter les modifications de la source dans des liaisons unidirectionnelle ou bidirectionnelle, la source doit implémenter un mécanisme de notification de modification de propriété approprié tel que INotifyPropertyChanged. Pour obtenir un exemple, consultez Guide pratique pour implémenter la notification de modification de propriété. La UpdateSourceTrigger propriété spécifie le minutage des mises à jour sources. Pour plus d’informations, consultez « Concepts de base de la liaison de données » dans Vue d’ensemble de la liaison de données.

Utilisation d'attributs XAML

<object property="{Binding  declaration}"/>  

Valeurs XAML

déclaration
Zéro ou plusieurs clauses d’attribution d’attributs séparées par des virgules (,). Pour plus d’informations, consultez Extension de balisage de liaison ou Vue d’ensemble des déclarations de liaison.

Constructeurs

Binding()

Initialise une nouvelle instance de la classe Binding.

Binding(String)

Initialise une nouvelle instance de la classe Binding avec un chemin initial.

Champs

DoNothing

Utilisé comme une valeur retournée pour indiquer au moteur de liaison de n’effectuer aucune action.

IndexerName

Utilisé comme PropertyName de PropertyChangedEventArgs pour indiquer qu'une propriété d'indexeur a changé.

SourceUpdatedEvent

Identifie l’événement attaché SourceUpdated.

TargetUpdatedEvent

Identifie l’événement attaché TargetUpdated.

XmlNamespaceManagerProperty

Identifie la propriété jointe XmlNamespaceManager.

Propriétés

AsyncState

Obtient ou définit les données opaques passées au répartiteur de données asynchrone.

BindingGroupName

Obtient ou définit le nom du BindingGroup auquel appartient cette liaison.

(Hérité de BindingBase)
BindsDirectlyToSource

Obtient ou définit une valeur qui indique s’il faut évaluer Path par rapport à l’élément de données ou à l’objet DataSourceProvider.

Converter

Obtient ou définit le convertisseur à utiliser.

ConverterCulture

Obtient ou définit la culture dans laquelle évaluer le convertisseur.

ConverterParameter

Obtient ou définit le paramètre à passer à Converter.

Delay

Obtient ou définit la durée d'attente, en millisecondes, avant de mettre à jour la source de liaison après le changement de la valeur sur les cibles.

(Hérité de BindingBase)
ElementName

Obtient ou définit le nom de l’élément à utiliser comme objet source de liaison.

FallbackValue

Obtient ou définit la valeur à utiliser quand la liaison ne peut pas retourner une valeur.

(Hérité de BindingBase)
IsAsync

Obtient ou définit une valeur qui indique si le Binding doit obtenir et définir des valeurs de façon asynchrone.

Mode

Obtient ou définit une valeur qui indique le sens du flux de données dans la liaison.

NotifyOnSourceUpdated

Obtient ou définit une valeur qui indique s’il faut déclencher l’événement SourceUpdated quand une valeur est transférée de la cible de liaison vers la source de liaison.

NotifyOnTargetUpdated

Obtient ou définit une valeur qui indique s’il faut déclencher l’événement TargetUpdated quand une valeur est transférée de la source de liaison vers la cible de liaison.

NotifyOnValidationError

Obtient ou définit une valeur qui indique s’il faut déclencher l’événement attaché Error sur l’objet lié.

Path

Obtient ou définit le chemin de la propriété de source de liaison.

RelativeSource

Obtient ou définit la source de liaison en spécifiant son emplacement par rapport à la position de la cible de liaison.

Source

Obtient ou définit l’objet à utiliser comme source de liaison.

StringFormat

Obtient ou définit une chaîne qui spécifie comment mettre en forme la liaison si elle affiche la valeur liée en tant que chaîne.

(Hérité de BindingBase)
TargetNullValue

Obtient ou définit la valeur utilisée dans la cible lorsque la valeur de la source est null.

(Hérité de BindingBase)
UpdateSourceExceptionFilter

Obtient ou définit un gestionnaire que vous pouvez utiliser pour fournir une logique personnalisée pour gérer les exceptions que le moteur de liaison rencontre pendant la mise à jour de la valeur source de liaison. Cela s’applique uniquement si vous avez associé un ExceptionValidationRule à votre liaison.

UpdateSourceTrigger

Obtient ou définit une valeur qui détermine la planification des mises à jour de la source de liaison.

ValidatesOnDataErrors

Obtient ou définit une valeur qui indique s'il faut inclure DataErrorValidationRule.

ValidatesOnExceptions

Obtient ou définit une valeur qui indique s'il faut inclure ExceptionValidationRule.

ValidatesOnNotifyDataErrors

Obtient ou définit une valeur qui indique s'il faut inclure NotifyDataErrorValidationRule.

ValidationRules

Obtient une collection de règles qui vérifient la validité des entrées utilisateur.

XPath

Obtient ou définit une XPath requête qui retourne la valeur sur la source de liaison XML à utiliser.

Propriétés attachées

XmlNamespaceManager

Obtient ou définit le XmlNamespaceManager utilisé pour effectuer des requêtes XPath tenant compte des espaces de noms dans des liaisons XML.

Méthodes

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Ajoute un gestionnaire pour l'événement attaché SourceUpdated.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Ajoute un gestionnaire pour l'événement attaché TargetUpdated.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
GetXmlNamespaceManager(DependencyObject)

Retourne un objet de gestionnaire d’espaces de noms XML utilisé par la liaison attachée à l’objet spécifié.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ProvideValue(IServiceProvider)

Retourne un objet qui doit être défini sur la propriété où cette liaison et cette extension sont appliquées.

(Hérité de BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Supprime un gestionnaire pour l'événement attaché SourceUpdated.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Supprime un gestionnaire pour l'événement attaché TargetUpdated.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

Définit un objet gestionnaire d’espace de noms utilisé par la liaison jointe à l’élément fourni.

ShouldSerializeFallbackValue()

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur effective de la propriété FallbackValue sur les instances de cette classe.

(Hérité de BindingBase)
ShouldSerializePath()

Indique si la propriété Path doit être rendue persistante.

ShouldSerializeSource()

Indique si la propriété Source doit être rendue persistante.

ShouldSerializeTargetNullValue()

Retourne une valeur qui indique si la propriété TargetNullValue doit être sérialisée.

(Hérité de BindingBase)
ShouldSerializeValidationRules()

Indique si la propriété ValidationRules doit être rendue persistante.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Événements attachés

SourceUpdated

Se produit quand une valeur est transférée de la cible de liaison vers la source de liaison, mais uniquement pour les liaisons dont la propriété NotifyOnSourceUpdated a la valeur true.

TargetUpdated

Se produit quand une valeur est transférée de la source de liaison vers la cible de liaison, mais uniquement pour les liaisons dont la propriété NotifyOnTargetUpdated a la valeur true.

S’applique à

Voir aussi