[WF4] Quelques Subtilités du WorkflowDesigner

Publié le 11 février 2010 par Jeremy.jeanson

Avec la Rc, de nombreux changement s’opère dans WF4 et maintenant il faut faire attention à l’usage que l’on a du WorkflowDesigner.

Dans le cas où vous souhaiter utiliser un WorkflowDesigner pour charger ou enregistrer des ficheirs Xaml, tout est simple. Peut être même trop simple… Les méthodes Load(String) et Save() font bien leur travail, il n’y a donc pas besoin d’attention partuculière.

Par contre, si votre idée est d’utiliser un autre system pour stocker votre Xaml, il faudra passer par la propriété Text et surtout son Flush().

Pour charger un Xaml on aura le code suivant

C#

String monXaml = "<...mon xaml ....>";
monWorkflowDesigner.Text = monXaml;
monWorkflowDesigner.Load();

Et pour récupérer le Xaml ce code ci:

C#

String monXaml;
monWorkflowDesigner.Flush();
monXaml = monWorkflowDesigner.Text;

Ceci semble simple, mais il faut le garder à l’esprit si on ne veut pas se retrouver avec un WorkflowDesigner au comportement “aléatoire”.