Probleme Binding wpf

Résolu
cs_GG29 Messages postés 326 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 8 février 2011 - 15 juil. 2009 à 21:35
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 - 3 déc. 2018 à 19:41
Bonjour à tous,
Je suis en train de créer un custom control wpf avec bien sur plusieurs Dependency Property.
Je rencontre un problème lors du binding sur une de ces propriétés de type decimal. Le binding fonctionne correctement (la valeur est bien affectée). Cependant les opérations qui doivent s'effectuer lors du changement de valeur ne s'effectue pas.
Après quelques recherches je ne comprends toujours pas d'où çà peut venir.

5 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
16 juil. 2009 à 09:17
Si j'ai bien compris ton code, il me semble qu'il manque quelque chose (et si ça marche comme en Silverlight).

Tu n'as pas déclaré de delegate sur le OnChange de ta valeur dans le UIPropertyMetadata.

Sébastien FERRAND
Consultant Sénior
Microsoft Visual C# MVP
1
Whismeril Messages postés 19028 Date d'inscription mardi 11 mars 2003 Statut Non membre Dernière intervention 24 avril 2024 656
3 déc. 2018 à 19:41
Merci Sebmafate, presque 10 ans après tu me sauves, une fois de plus.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
15 juil. 2009 à 22:13
Salut

Comment est déclarée ta propriété, peux-tu mettre le code STP.
0
cs_GG29 Messages postés 326 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 8 février 2011 17
16 juil. 2009 à 05:24
public decimal Value
{
get { return (decimal)GetValue(ValueProperty); }
set
{
if (value == Value) return;

value = value.Limit(MinValue, MaxValue);
SetValue(ValueProperty, value);
Format();
}
}

public static readonly DependencyProperty ValueProperty =
DependencyProperty.Register(
"Value",
typeof(decimal),
typeof(CurrencyTextBox),
new UIPropertyMetadata(decimal.Zero));
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 juil. 2009 à 08:56
Le format est déclaré comment.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_GG29 Messages postés 326 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 8 février 2011 17
16 juil. 2009 à 17:21
Voila le code qui fonctionne

public static readonly DependencyProperty ValueProperty =
DependencyProperty.Register(
"Value",
typeof(decimal),
typeof(CurrencyTextBox),
new UIPropertyMetadata(
decimal.Zero,
(sender, args) =>
{
var ctb = sender as CurrencyTextBox;
if (ctb == null) return;

ctb.Format();
}));
0
Rejoignez-nous