Magazine Internet

[WPF] DependencyProperty Double et valeur par défaut

Publié le 05 juin 2009 par Jeremy.jeanson

Parmi les petite choses qui peuvent faire mal avec WPF, il existe la DependencyProperty . Cette petite merveille de technologie peu devenir votre pire cauchemar si vous n’adopter pas de suite certaines bonnes pratiques.

Parmi celles-ci il est important de bien faire attention aux valeurs par défaut (UIPropertyMetadata en C# et FrameworkPropertyMetadata en Vb) qui en général se trouve en fin d’instanciation de la DependencyProperty. Il est très important que cette valeur soit explicitement typé! Entendez par là que mettre un String dans un Int32 risque de vous causer bien des tracas… tout comme null en C# ou Empty en Vb pour des types qui ne le supportent pas.

Pour les DependencyProperty de type Double il y a en plus une petite astuce : ajouter une décimale pour forcer un type double (ou “f” en C#) même si il n’y en a pas besoin. De la sorte votre valeur par défaut ne vous posera pas de souci.

Par exemple pour initialiser une propriété de type Double à 69 on peu écrire

Vb
Public Shared ReadOnly MaProperty As DependencyProperty = DependencyProperty.Register(
	"MaProperty",
	GetType(Double),
	GetType(MaClass),
	New UIPropertyMetadata(69.0))
C#
public static readonly DependencyProperty MaProperty = DependencyProperty.Register(
	"MaProperty",
	typeof(Double),
	typeof(MaClass),
	new UIPropertyMetadata(69.0));
ou encore pour C#
public static readonly DependencyProperty MaProperty = DependencyProperty.Register(
	"MaProperty",
	typeof(Double),
	typeof(MaClass),
	new UIPropertyMetadata(69f));

Retour à La Une de Logo Paperblog

A propos de l’auteur


Jeremy.jeanson 1573 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte