Appliquer des fonctions au binding
-
vendredi 11 mai 2012 16:17
Bonjour,
Dans mon application, j'utilise un Pivot que je remplis d'items grâce à des bindings.
Cependant j'aimerai savoir si il est possible d'appliquer des fonctions quand on fait un binding.
Du styleContent="{Binding decoupe(Nom)}"
Merci pour vos réponses
Ludo
Toutes les réponses
-
vendredi 11 mai 2012 17:55
Bonjour,
C'est tout à fait possible.
Pour ça il suffit d'utiliser un converter : Lien MSDN
En créant une classe qui hérite de IConverter, tu peux spécifier ta logique de conversion. Tu n'as plus qu'a la préciser comme ceci :
Text="{Binding Path=StartDate, Converter={StaticResource dateConverter}}"Et la méthode Convert de ta classe converter sera appelé avec ta valeur en paramètre.
N'hésite pas si je ne suis pas assez précis.
Matthieu
- Marqué comme réponse Ciprian DuduialaOwner lundi 14 mai 2012 07:27
-
dimanche 13 mai 2012 16:05
La solution des Matthieu est effectivement pratique si tu veux réutiliser la logique du converter.
S'il s'agit d'une méthode business de ton ViewModel, tu peux simplement l'encapsuler via le getter d'une propriété :
public string NomDecoupe { get { return Decoupe(this.Nom); } }Et pour modifier NomDecoupe à chaque modification de Nom :
private string _nom; public string Nom { get { return _nom; } } set { _nom = value; OnPropertyChanged("Nom"); OnPropertyChanged("NomDecoupe"); }- Modifié Cyril CathalaMVP dimanche 13 mai 2012 16:06
- Marqué comme réponse Ciprian DuduialaOwner lundi 14 mai 2012 07:27


