[译]IActivityToolboxService

原文地址:http://blogs.msdn.com/kushals/archive/2009/09/16/iactivitytoolboxservice.aspx

在工作流的创作过程中,客户都希望他们的工具箱是上下文相关的。例如一个特定的活动被添加到工作流中,然后确保需要在工具箱中显示几个其他的活动,或者
活动从工作流中移除时,工具箱也要根据领域的需求做出适当的反应。

当然在重新宿主的工作流设计器中,这些都是很容易做到的,因为你可以控制工具箱控件并且能确保其根据工作流中的模型变化而更改。

然而,在VS中工具箱是一个特定的控件,我们需要借助IActivityToolboxService来完成该目的:

public interface IActivityToolboxService 
    { 
        void AddCategory(string categoryName); 
        void RemoveCategory(string categoryName); 
        void AddItem(string qualifiedTypeName, string categoryName); 
        void RemoveItem(string qualifiedTypeName, string categoryName); 
        IList<string> EnumCategories(); 
        IList<string> EnumItems(string categoryName); 
    }

这个API的自解释是很漂亮的。

我还附有一个最基本的示例,如果特定活动设计器具有OnModelItemChanged事件,当该事件触发时,我们就可以使用IActivityToolboxService来编辑VS中的工具箱项。OnModelItemChanged事件在自定义活动拖放到工作流上时触发。

还请注意,从一个特定的工作流选项卡上的删除项目,起初应当是使用IActivityToolboxService 添加的。 这就意味着,对于Workflow1.xaml你不能删除任何开箱即用的活动。 它的工作的方式是,您首先添加自定义的活动,然后删除它们,具体取决于您目前的上下文所需。


本文转自生鱼片博客园博客,原文链接:http://www.cnblogs.com/carysun/archive/2009/11/21/WF4-IActivityToolboxService.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值