хорошо .. для всех остальных ..
Я решил эту проблему, используя свое собственное расширение «Уведомление», которое имеет обработчик событий Уведомления как таковой:
public class HostEventNotifier : IHostNotification
{
public event EventHandler<HostNotifyEventArgs> Notification;
public void Notify(object model)
{
if(Notification != null)
{
Notification(this, new HostNotifyEventArgs(model));
}
}
}
Расширение было добавлено в приложение WF и могло вызываться в моих событиях мастера как:
var ext = context.GetExtension<IHostNotification>();
var parentModel = context.GetValue(ParentModel);
if(ext!=null && parentModel !=null)
{
if(parentModel.ContainsKey(bookmarkName))
{
ext.Notify(parentModel[bookmarkName]);
Thread.Sleep(500);
}
}
Наконец, обработчик события расширения был установлен на метод, который знал, как обрабатывать мои данные.
Это все еще не полностью - я не разработал модель потоков (отсюда и uglt Thread.Sleep), но я хотел дать ответ любому, кто ищет.
Идея для этого пришла от "Pro WF 4 / Bukovics", адрес