private void Execute(Boolean slow)
        {
            // Valider l'activité créé dynamiquement
            Activity        activity = XamlHelper.GetActivity(Text);
            DynamicActivity d        = (DynamicActivity)activity;

            if (d.Implementation == null)
            {
                return;
            }

            if (_type == WorkflowType.Activiy)
            {
                // Pour avoir un tracking visual, il faut un mapping.
                // Le mapping n'est possible que si le designer est chargé à partir d'un fichier.
                // Afin de palier à ce problème, on enregistre le fichier dans un répertoire temporaire et on recharge
                String path = Path.GetTempFileName();
                _designer.Flush();
                _designer.Save(path);
                ResetDesigner();
                _designer.Load(path);

                _host = new WorkflowApplication(activity);

                Tracking = new VisualTracking(_designer, slow);

                // Ajout des extension
                _host.Extensions.Add(_visualTracking);
                _host.Extensions.Add(_output);

                _host.Completed = (e) =>
                {
                    //This is to remove the final debug adornment
                    Dispatcher.CurrentDispatcher.Invoke(DispatcherPriority.Render, new Action(ClearDebug));
                    _host = null;
                    _stopCommand.RaiseCanExecuteChanged();
                };

                // Invoquer le workdflow
                _host.Run();
                _stopCommand.RaiseCanExecuteChanged();
            }
            else
            {
                throw new NotImplementedException("L'hébergement de service n'est pas supporté actuellement!");
            }
        }
Exemplo n.º 2
0
 void _lignes_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
 {
     _clearCommand.RaiseCanExecuteChanged();
 }
 private void Errors_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
 {
     _executeCommand.RaiseCanExecuteChanged();
 }