Warten auf Eingabeaktivität
Dieses Thema gilt für Windows Workflow Foundation 4.
In diesem Beispiel wird veranschaulicht, wie benannte Lesezeichen in einem Workflow erstellt werden. Windows Workflow Foundation (WF) stellt keine Aktivität zur deklarativen Lesezeichenerstellung bereit. Wenn Sie daher in Ihrem Workflow ein Lesezeichen erstellen möchten, müssen Sie eine benutzerdefinierte Aktivität schreiben, die eines erstellt. Die in diesem Beispiel definierte WaitForInput
-Aktivität stellt diese Funktionalität bereit, damit Benutzer Lesezeichen deklarativ innerhalb eines Workflows erstellen können.
Projekte in diesem Beispiel
Projektname |
Beschreibung |
Hauptdateien |
WaitForInput |
Enthält die |
WaitForInput.cs Definition der |
WaitForInputDesigner.xaml Benutzerdefinierter Designer für die |
||
TypeToFirstGenericArgumentConverter.cs WPF-Typkonverter, der verwendet wird, um den generischen Typ der Aktivität im Designer zu aktualisieren. |
||
WaitForInputTestClient |
Beispielclientanwendung, die mithilfe des Workflow-Designers unter Verwendung mehrerer WaitForInput-Aktivitäten einen Workflow konfiguriert und ausführt. |
Sequence1.xaml Ein sequenzieller Workflow, der die |
Program.cs Führt eine Instanz des in "Sequence1.xaml" definierten Workflows aus. |
WaitForInput-Aktivität
Die WaitForInput
-Aktivität erstellt in einem Workflow ein benanntes Lesezeichen. Das Lesezeichen wartet auf ein Signal und empfängt Daten von seinem konfigurierten Typ. Nachdem das Lesezeichen wiederaufgenommen wurde, sind die an den Workflow übergebenen Daten über die Result
-Eigenschaft verfügbar.
Die WaitForInput
-Aktivität wird von der NativeActivity-Klasse abgeleitet, da sie Lesezeichen erstellen muss, auf die nur durch die NativeActivityContext-Klasse zugegriffen werden kann.
Auf die Aktivität können zur Bindung an einen Designer, zum Hinzufügen der generischen Argumentfunktion, die aktualisiert werden kann, und zum Festlegen der standardmäßigen generischen Typs auf "Zeichenfolge" drei Attribute angewendet werden. Die Aktivität weist auch die in der folgenden Tabelle aufgeführten Argumente auf.
Name |
Typ |
Beschreibung |
TResult |
Generisches Argument (TResult) |
Der Typ des Lesezeichens. Dies ist der Typ der Daten, der beim Wiederaufnehmen des Lesezeichens an das Lesezeichen übergeben werden soll. |
BookmarkName |
InArgument<Zeichenfolge> |
Der Name des Lesezeichens. |
Ergebnis |
InArgument<TResult> |
Die Daten, die an die Aktivität übergeben werden, wenn das Lesezeichen wiederaufgenommen wird. |
WaitForInput-Aktivitätsdesigner
Der WaitForInput
-Aktivitätsdesigner wird in der Datei "WaitForInputDesigner.xaml" implementiert. Die WaitForInput
-Aktivität und ihr Designer sind in derselben Assembly enthalten. In der folgenden Abbildung ist die WaitForInput
-Aktivität in der Toolbox innerhalb einer Kategorie dargestellt, die denselben Namen wie die Assembly hat.
In der folgenden Abbildung ist der WaitForInput
-Designer dargestellt. Da die WaitForInput
-Aktivität ist sehr einfach ist, können alle Argumente im Designer direkt in der Designeroberfläche festgelegt werden.
So verwenden Sie dieses Beispiel
Öffnen Sie Datei "WaitForInput.sln" in Visual Studio 2010.
Drücken Sie F6, um die Projektmappe zu erstellen.
Drücken Sie STRG+F5, um den das Beispiel zu starten.
Hinweis: |
---|
Die Beispiele sind möglicherweise bereits auf dem Computer installiert. Überprüfen Sie das folgende (standardmäßige) Verzeichnis, bevor Sie fortfahren.
<Installationslaufwerk>:\WF_WCF_Samples
Wenn dieses Verzeichnis nicht vorhanden ist, rufen Sie Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) Samples for .NET Framework 4 auf, um alle Windows Communication Foundation (WCF)- und WF-Beispiele herunterzuladen. Dieses Beispiel befindet sich im folgenden Verzeichnis.
<Installationslaufwerk>:\WF_WCF_Samples\WF\Scenario\ActivityLibrary\WaitForInput
|