Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

UpdateSourceTrigger, énumération

Décrit la planification des mises à jour de la source de liaison.

Espace de noms :  System.Windows.Data
Assembly :  PresentationFramework (dans PresentationFramework.dll)

public enum UpdateSourceTrigger
<propriété d'objet="NomMembreÉnumération" .../>

Nom de membreDescription
DefaultValeur UpdateSourceTrigger par défaut de la propriété de cible de liaison. La valeur par défaut de la plupart des propriétés de dépendance est PropertyChanged, alors que la valeur par défaut de la propriété Text est LostFocus.

Vous pouvez déterminer par programme la valeur UpdateSourceTrigger par défaut d'une propriété de dépendance en obtenant les métadonnées de cette propriété à l'aide de GetMetadata ; vérifiez ensuite la valeur de la propriété DefaultUpdateSourceTrigger.

ExplicitMet à jour la source de liaison uniquement lorsque la méthode UpdateSource est appelée.
LostFocusMet à jour la source de liaison dès que l'élément cible de liaison perd le focus.
PropertyChangedMet à jour la source de liaison dès que la propriété cible de liaison est modifiée.

Pour plus d'informations, consultez Binding.UpdateSourceTrigger.

Cette rubrique décrit comment utiliser la propriété UpdateSourceTrigger pour contrôler le minutage des mises à jour de la source de liaison. Le rubrique utilise le contrôle TextBox comme exemple.

La propriété TextBox.Text a une valeur par défaut UpdateSourceTrigger de LostFocus. Cela signifie que si un application a une TextBox avec une propriété TextBox.Text liée aux données, le texte que vous saisissez dans la TextBox ne met pas à jour la source jusqu'à ce que la TextBox perde le focus (par exemple, lorsque vous cliquez en dehors de la TextBox).

Si vous souhaitez que la source soit mise à jour pendant votre saisie, définissez le UpdateSourceTrigger de la liaison PropertyChanged. Dans l'exemple suivant, les propriétés Text de la TextBox et du TextBlock sont liées à la même propriété source. La propriété UpdateSourceTrigger de la liaison TextBox a la valeur PropertyChanged.


<Label>Enter a Name:</Label>
<TextBox>
  <TextBox.Text>
    <Binding Source="{StaticResource myDataSource}" Path="Name"
             UpdateSourceTrigger="PropertyChanged"/>
  </TextBox.Text>
</TextBox>

<Label>The name you entered:</Label>
<TextBlock Text="{Binding Source={StaticResource myDataSource}, Path=Name}"/>


Par conséquent, le TextBlock affiche le même mot (car la source change) lorsque l'utilisateur entre le texte dans la TextBox, comme illustré dans la capture d'écran suivante de l'exemple :

Capture d'écran : exemple de liaison de données simple

Si vous avez un formulaire de boîte de dialogue ou pouvant être modifié par l'utilisateur et que vous souhaitez exécuter les mises à jour de la source jusqu'à ce que l'utilisateur ait fini de modifier les champs et ait cliqué sur « OK », vous pouvez définir la valeur UpdateSourceTrigger de vos liaisons sur Explicit, comme indiqué dans l'exemple suivant :


<TextBox Name="itemNameTextBox"
         Text="{Binding Path=ItemName, UpdateSourceTrigger=Explicit}" />


Lorsque vous définissez la valeur UpdateSourceTrigger sur Explicit, la valeur source change uniquement lorsque l'application appelle la méthode UpdateSource. L'exemple suivant montre comment appeler UpdateSource pour itemNameTextBox :


// itemNameTextBox is an instance of a TextBox
BindingExpression be = itemNameTextBox.GetBindingExpression(TextBox.TextProperty);
be.UpdateSource();


RemarqueRemarque

Vous pouvez utiliser la même technique pour les propriétés d'autres contrôles, mais gardez à l'esprit que la plupart des autres propriétés ont une valeur UpdateSourceTrigger par défaut de PropertyChanged. Pour plus d'informations, consultez la page de propriétés UpdateSourceTrigger.

RemarqueRemarque

La propriété UpdateSourceTrigger traite les mises à jour de la source et ne concerne donc que les liaisons TwoWay ou OneWayToSource. Pour les liaisons TwoWay et OneWayToSource, l'objet source doit fournir des notifications de modification de la propriété. Pour plus d'informations, consultez les exemples figurant dans cette rubrique. Vous pouvez aussi consulter Comment : implémenter la notification des modifications de propriétés.

.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft