Condividi tramite


Finestre di progettazione composte personalizzate - relatore dell'elemento del flusso di lavoro

Le informazioni contenute in questo argomento sono valide per Windows Workflow Foundation 4.

L'oggetto WorkflowItemPresenter è un tipo di chiave nel modello di programmazione della finestra di progettazione WF che consente la creazione di un'"area di rilascio" in cui è possibile posizionare un'attività arbitraria. In questo esempio viene illustrato come compilare un ActivityDesigner che espone tale "area di rilascio".

In questo esempio viene illustrato quanto segue:

Dimostrazione

  • Creazione di un ActivityDesigner personalizzato con un oggetto WorkflowItemPresenter.

  • Registrazione della finestra di progettazione personalizzata utilizzando l'archivio di metadati.

  • Programmazione della casella degli strumenti riallocata in modo dichiarativo e imperativo.

Dettagli dell'esempio

Il codice per questo esempio illustra:

  • L'ActivityDesigner personalizzato compilato per la classe SimpleNativeActivity.

  • La creazione di un ActivityDesigner personalizzato con un oggetto WorkflowItemPresenter.

<sap:ActivityDesigner x:Class="Microsoft.Samples.UsingWorkflowItemPresenter.SimpleNativeDesigner"
    xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:sap="clr-namespace:System.Activities.Presentation;assembly=System.Activities.Presentation"
    xmlns:sapv="clr-namespace:System.Activities.Presentation.View;assembly=System.Activities.Presentation">
    <sap:ActivityDesigner.Resources>
        <DataTemplate x:Key="Collapsed">
            <StackPanel>
                <TextBlock>This is the collapsed view</TextBlock>
            </StackPanel>
        </DataTemplate>
        <DataTemplate x:Key="Expanded">
            <StackPanel>
                <TextBlock>Custom Text</TextBlock>
                <sap:WorkflowItemPresenter Item="{Binding Path=ModelItem.Body, Mode=TwoWay}"
                                        HintText="Please drop an activity here" />
            </StackPanel>
        </DataTemplate>
        <Style x:Key="ExpandOrCollapsedStyle" TargetType="{x:Type ContentPresenter}">
            <Setter Property="ContentTemplate" Value="{DynamicResource Collapsed}"/>
            <Style.Triggers>
                <DataTrigger Binding="{Binding Path=ShowExpanded}" Value="true">
                    <Setter Property="ContentTemplate" Value="{DynamicResource Expanded}"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </sap:ActivityDesigner.Resources>
    <Grid>
        <ContentPresenter Style="{DynamicResource ExpandOrCollapsedStyle}" Content="{Binding}" />
    </Grid>
</sap:ActivityDesigner>

Si noti l'utilizzo dell'associazione dati WPF da associare all'oggetto ModelItem.Body. ModelItem è la proprietà nell'oggetto WorkflowElementDesigner che si riferisce all'oggetto sottostante per il quale viene utilizzata la finestra di progettazione, in questo caso, SimpleNativeActivity.

Per impostare, compilare ed eseguire l'esempio

  1. Aprire la soluzione in Visual Studio 2010.

  2. Premere F5 per compilare ed eseguire l'applicazione.

Dd759032.Important(it-it,VS.100).gif Nota:
È possibile che gli esempi siano già installati nel computer. Verificare la directory seguente (impostazione predefinita) prima di continuare.

<UnitàInstallazione>:\WF_WCF_Samples

Se questa directory non esiste, andare alla sezione relativa agli esempi di Windows Communication Foundation (WCF) e Windows Workflow Foundation (WF) per .NET Framework 4 per scaricare tutti gli esempi Windows Communication Foundation (WCF) e WF. Questo esempio si trova nella directory seguente.

<UnitàInstallazione>:\WF_WCF_Samples\WF\Basic\CustomActivities\CustomActivityDesigners\WorkflowItemPresenter