WPF France

  • Augmenter la taille
  • Taille par défaut
  • Diminuer la taille

Serialiser des DependencyObjects : c'est facile !

Envoyer Imprimer PDF
Note des utilisateurs: / 2
MauvaisTrès bien 

On lit souvent sur le net que les DependencyObjects ne sont pas marqués comment étant sérializable et que c'est un inconvénient majeur dans leur utilisation au quotidien. Il existe cependant une façon facile de les sérializer.


Pour cela, on utilise XAMLWriter et XAMLReader (en .NET 3.5). Voici un exemple de code :

//DependendyObject de démo 
 public class MyDependencyObject : DependencyObject
{
public static readonly DependencyProperty MyDependencyPropertyProperty =
 DependencyProperty.Register("MyDependencyProperty", typeof(String), typeof(MyDependencyObject));
 
 public String MyDependencyProperty
 { 
  get
   {
      return (String)GetValue(MyDependencyObject.MyDependencyPropertyProperty);
   }
  set 
   {
      SetValue(MyDependencyObject.MyDependencyPropertyProperty, value);
    }
 }
 }
 
...
 
MyDependencyObject obj = new MyDependencyObject();
obj.MyDependencyProperty = "One love";
String serializedString = XamlWriter.Save(obj);
 Console.WriteLine(serializedString);
 


Cela produira alors un fichier XML de ce type :

<MyDependencyObject 
 MyDependencyProperty="One love" 
 xmlns="clr-namespace:ANTOINE.Jonathan;assembly=ANTOINE.Jonathan" />

(Article traduit de l'anglais depuis : http://blog.lexique-du-net.com )

Commentaires (0)
Mise à jour le Mercredi, 31 Mars 2010 14:03  

Partagez


Article au hasard

  • (Article original sur le blog de Sébastien) Comme je vous l’avait dit dans mon dernier article, j’ai voulu aller encore un peu plus loin dans la création de « Custom Control » en utilisant la suite d’outil Microsoft Expression et plus précisément Expression Design 3 et Expression Blend 3 afin de m’aider dans la conception de contrôle personnalisé. Pour rester dans la continuité du précédent art...
    Lire la suite...