怎样获得 WWF 工作流的属性及连接关系
我按照微软提供的 工作流 Samples 设计了用户 工作流设计器, 我想获取 用户 添加了哪个activity,别并且 用户修改后的activity Name 是什么, activity 的连接关系等, 用于在数据库里保存, 请哪位高手指点一下. --------------------编程问答-------------------- 问题:我按照微软提供的 工作流 Samples 设计了用户 工作流设计器, 我想获取 用户 添加了哪个activity,别并且 用户修改后的activity Name 是什么, activity 的连接关系等, 用于在数据库里保存, 请哪位高手指点一下.答案:如果你使用ActivityDesigner做你的base class,那么你可以使用OnActivityChanged这个事件。
这里我实现了一个很简单的一个Activity连同它的Designer。
using System.ComponentModel;
using System.Workflow.ComponentModel.Design;
using System.Windows.Forms;
using System;
using System.Workflow.ComponentModel;
[Designer(typeof(WriteLineDesigner))]
public partial class WriteLine : Activity
{
static DependencyProperty TextProperty = DependencyProperty.Register("Text", typeof(string), typeof(WriteLine));
public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); }
}
protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
{
Console.WriteLine("Output from workflow: " + Text);
return ActivityExecutionStatus.Closed;
}
}
public class WriteLineDesigner : ActivityDesigner
{
protected override void OnActivityChanged(ActivityChangedEventArgs e)
{
// You can see the change here.
MessageBox.Show("" + e.Member);
MessageBox.Show("" + e.OldValue);
MessageBox.Show("" + e.NewValue);
}
}
我们这个Designer非常简单,这些MessageBox可以换成需要把这些数据写到数据库的代码。
补充:.NET技术 , .NET Framework