Servizio casella degli strumentiToolbox Service

In questo esempio viene illustrato come aggiornare le attività della casella degli strumenti di Visual Studio 2010Visual Studio 2010 in base al contesto del flusso di lavoro.This sample demonstrates how to update the Visual Studio 2010Visual Studio 2010 Toolbox activities based on the context of the workflow. L'esempio contiene un flusso di lavoro che modifica il contenuto della casella degli strumenti in base alla selezione o meno di un'attività personalizzata.The sample contains a workflow that changes the toolbox contents based on whether a custom activity is selected.

DiscussioneDiscussion

Durante la creazione di flussi di lavoro, i clienti generalmente desiderano che Casella degli strumenti sia sensibile al contesto.During workflow authoring, customers generally want their Toolbox to be context sensitive. Ad esempio, l'utente può volersi assicurare che nella Casella degli strumenti siano visualizzate alcune attività aggiuntive quando un'attività specifica viene aggiunta al flusso di lavoro.For example, the user may want to ensure that the Toolbox shows a few additional activities when a specific activity is added to the workflow. Se le attività vengono rimosse dal flusso di lavoro, la casella degli strumenti deve riflettere in modo appropriato i requisiti del dominio.If the activities are removed from the workflow, the toolbox should react appropriately based on the domain requirements.

In una finestra di progettazione del flusso di lavoro riallocata è possibile verificare il controllo Casella degli strumenti e assicurarsi che in base alle modifiche del Modello nel flusso di lavoro, l'host attivi modifiche appropriate nel controllo Casella degli strumenti.In a re-hosted workflow designer, you control the Toolbox control and can ensure that based on the Model changes in the workflow, the host triggers appropriate changes in the Toolbox control. Tuttavia, in Visual Studio 2010Visual Studio 2010, la casella degli strumenti non viene controllata dall'utente e quindi per modificarne il contenuto è necessaria un'interfaccia.However, in Visual Studio 2010Visual Studio 2010, the toolbox is not controlled by the user and thus an interface is required to modify its contents. IActivityToolboxService è l'interfaccia necessaria.IActivityToolboxService is that interface.

L'API fornisce i quattro metodi seguenti.The API provides the following four methods.

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);   
}  

Per impostare, compilare ed eseguire l'esempioTo set up, build, and run the sample

  1. In Visual Studio 2010Visual Studio 2010 aprire il file della soluzione WorkflowSimulator.sln.Using Visual Studio 2010Visual Studio 2010, open the WorkflowSimulator.sln solution file.

  2. Premere CTRL+MAIUSC+B per compilare la soluzione,Build the solution by pressing CTRL+SHIFT+B.

  3. Aprire il file Workflow.xaml.Open the Workflow.xaml file.

  4. Aggiungere un CustomActivity trascinando e rilasciandolo dalla casella degli strumenti.Add a CustomActivity by dragging and dropping it from the toolbox. Si noti che una categoria della casella degli strumenti aggiuntiva denominata: nuova categoria WF con un'attività aggiuntiva assegnare.Notice that an additional Toolbox category called: New WF Category with an additional activity Assign.

  5. Deselezionare la CustomActivity trascinandovi un'altra attività.Now unselect the CustomActivity by dragging another activity into it.

  6. L'elemento assegnare nella categoria nuova categoria WF nella casella degli strumenti viene rimosso.The item Assign in the category New WF Category under Toolbox is now removed. Inoltre, poiché non sono rimasti elementi nella categoria, questa viene anch'essa rimossa.Also, because there are no more items left in the category, the category is removed as well.

  7. Selezionare il CustomActivity nuovamente e la categoria e assegnare attività vengono nuovamente aggiunte.Select the CustomActivity again and the category and Assign activity is added back.

Importante

È possibile che gli esempi siano già installati nel computer.The samples may already be installed on your machine. Verificare la directory seguente (impostazione predefinita) prima di continuare.Check for the following (default) directory before continuing.

<InstallDrive>:\WF_WCF_Samples

Se questa directory non esiste, andare al Windows Communication Foundation (WCF) e gli esempi di Windows Workflow Foundation (WF) per .NET Framework 4 per scaricare tutti i Windows Communication Foundation (WCF) e WFWF esempi.If this directory does not exist, go to Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 to download all Windows Communication Foundation (WCF) and WFWF samples. Questo esempio si trova nella directory seguente.This sample is located in the following directory.

<InstallDrive>:\WF_WCF_Samples\WF\Basic\Designer\IActivityToolboxService