Question

Je veux mieux comprendre les capacités et les limites de ce qui peut être fait avec des activités personnalisées à WF 4.0 au moment de la conception. Plus précisément, ce que nous pouvons faire dans une activité personnalisée telle que nous pouvons permettre au concepteur d'interagir de façon personnalisée au moment de la conception pour spécifier les détails / données sur une activité.

Par exemple, je voudrais créer une activité A, et quand les lieux de concepteur de workflow d'activité dans un flux de travail dans le concepteur (soit concepteur Visual Studio ou un concepteur de nouveau hébergé dans une application séparée), une boîte de dialogue .NET peut être montré qui permet à l'utilisateur d'entrer des données (par exemple, spécifier un fichier par boîte de dialogue Ouvrir fichier) et valide les données d'entrée-à-dire exécute un code à chaque fois qu'une zone de texte particulier se concentre ou données saisies (gestionnaires d'événements).

Peut-il être fait et stocké dans le fichier XAML de workflow?

S'il vous plaît noter que toute cette capacité est nécessaire dans un concepteur de workflow lorsqu'un flux de travail est réellement conçu.

Merci.

Était-ce utile?

La solution

Le concepteur de WF4 est tout à fait capable. Vous pouvez ajouter des contrôles au concepteur permettant à l'utilisateur final d'interagir avec la surface de conception directement sans utiliser la feuille de propriétés. Vous pouvez également ajouter la validation des activités pour vérifier si les données saisies sont acceptables ou non. Tout cela se fait au niveau d'activité en code C # ou VB, pas au niveau du flux de travail. Je ne sais pas sur les événements quand une activité est abandonnée, mais pense qu'ils sont également pris en charge (ils où au moins en Wf3 et j'attendre à ce que à reporter.

Autres conseils

Cette vidéo parle de la façon de créer des activités personnalisées (avec zone de texte) de sorte que vous pouvez mettre les valeurs dans le temps de conception .. espérons que cette aide u ..

http://bloggersguides.net/media/p/188.aspx

Il y a quelques façons dont vous pouvez Accrocher aux notifications d'événement lorsqu'une activité est ajoutée à votre flux de travail.

La première écoute l'événement TextChanged sur la classe WorkflowDesigner (Beta1) ou je pense qu'il va être un événement modelChanged (en Beta2), qui est plus fiable. Ceci est une notification que quelque chose a changé dans votre flux de travail. Pas quelque chose en particulier, juste quelque chose, mais vous pouvez l'utiliser comme un déclencheur pour parcourir votre flux de travail et la recherche de nouvelles activités non configurés.

Une seconde possibilité profite du fait que chaque ModelItem (qui est le wrapper de conception pour une activité) met en œuvre INotifyPropertyChanged. Au lieu d'écouter des changements dans l'ensemble du workflow, vous pouvez écouter les modifications sur les propriétés spécifiques, telles que le « corps » d'une activité While - puis lorsque la propriété s'initialisée à tenir une nouvelle activité, répondre au changement

Une troisième possibilité est que l'activité que vous êtes intéressant a un concepteur personnalisé (que vous écrivez) - et il semble que ce scénario correspond à ce que vous pensez. Ici, vous pouvez personnaliser complètement l'apparence de vos activités. Le concepteur personnalisé est vraiment juste un contrôle WPF. Vous pouvez utiliser les mêmes événements et techniques de liaison de données et de validation applicables lors de la conception d'une application WPF, ou de répondre à des événements WPF normaux. Vous pouvez certainement apparaître des boîtes de dialogue si vous le souhaitez.

pour être stockés dans des fichiers XAML, bien sûr des activités personnalisées sont enregistrées dans les fichiers XAML ainsi que toutes leurs propriétés configurées - tout comme les activités régulières. Lorsque vous voulez charger le fichier XAML à nouveau, vous avez besoin de fournir des informations contextuelles sur les assemblées qui détiennent les activités référencées par le fichier XAML. Dans VS cela est aussi facile que d'ajouter des références de montage, dans le scénario de réhébergement vous écrire un petit code pour le faire.

Vous aimeriez trouver plus à ce sujet ou poser des questions similaires sur le .NET Framework 4: Workflow Foundation - Beta 1 Forum

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top