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 des données et d’interagir avec elles. 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 de BindingBase . 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 de base

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

  • En général, chaque liaison a ces quatre composants : un objet cible de liaison, une propriété cible, une source de liaison et un Path à la valeur de la source de liaison à utiliser. Par exemple, si vous souhaitez lier le contenu d’un TextBox à la propriété Name d’un objet Employee, votre objet Target est le TextBox , la propriété Target 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 d' UIElement objets sont des propriétés de dépendance et la plupart des propriétés de dépendance, à l’exception de celles en lecture seule, prennent en charge la liaison de données par défaut. (Seuls DependencyObject les types peuvent définir des propriétés de dépendance et tous les UIElement objets dérivent de DependencyObject .)

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

Utilisez la Mode propriété pour spécifier la direction du Workflow. Pour détecter les modifications de source dans des liaisons unidirectionnelles ou bidirectionnelles, la source doit implémenter un mécanisme de notification de modification de propriété approprié, tel que INotifyPropertyChanged . Pour obtenir un exemple, consultez Comment : implémenter la notification de modification de propriété. La UpdateSourceTrigger propriété spécifie le minutage des mises à jour de la source. Pour plus d’informations, consultez « concepts de base de la liaison de données » dans vue d’ensemblede la liaison de données.

Utilisation d'attributs XAML

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

Valeurs XAML

déclaration
Zéro, une ou plusieurs clauses d’assignation d’attribut séparées par des virgules (,). Pour plus d’informations, consultez vue d’ensemblede la liaison de balises ou 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 de 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 gestionnaire d’espace de noms XML utilisé par la liaison jointe à 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