Sprache

IFormBuilder<T> Schnittstelle

Definition

Schnittstelle zum Erstellen eines Formulars.

public interface IFormBuilder<T> where T : class
type IFormBuilder<'T (requires 'T : null)> = interface
Public Interface IFormBuilder(Of T)

Typparameter

T

Bilde den Zustand.

Abgeleitet

Hinweise

Eine Form besteht aus einer Reihe von Schritten, die einer von folgenden Schritten sein können:

Standardmäßig werden die Schritte in der Reihenfolge der Message(String, ActiveDelegate<T>, IEnumerable<String>), Field(IField<T>) und Confirm(String, ActiveDelegate<T>, IEnumerable<String>) Aufrufe ausgeführt. Wenn Sie keine explizite Kontrolle übernehmen, werden die Schritte in der im Formularzustand definierten Reihenfolge mit einer endgültigen Bestätigung ausgeführt. Diese Benutzeroberfläche ermöglicht es Ihnen, ein Formular zu erstellen, indem Sie Felder, Nachrichten und Bestätigungen zusammensetzen. Die fließenden Bausteine bieten gängige Muster, wie zum Beispiel Felder, die auf deiner Zustandsklasse basieren, aber du kannst auch deine eigene Definition einer Form mit Advanced.IFild erstellen. Wenn du ein Formular mit C#-Reflexion über deiner Zustandsklasse erstellen möchtest, nutze FormBuilder. Um deklarativ ein Formular über JSON Schema zu erstellen, kannst du Json.FormBuilderJson verwenden.

Formulare sind sensibel gegenüber der aktuellen Thread-UI-Kultur. Das Microsoft. Bot.Builder-Strings lokalisieren, falls verfügbar, auf diese Kultur. Sie können die für Ihr Formular generierten Zeichenketten auch lokalisieren, indem Sie IForm.SaveResources aufrufen oder das RView-Tool verwenden und diese Ressource Ihrem Projekt hinzufügen. Für Strings in dynamischen Feldern, Nachrichten oder Bestätigungen musst du die normalen C#-Mechanismen verwenden, um sie zu lokalisieren. Weitere Informationen finden Sie in der Übersichtsdokumentation.

Eigenschaften

Name Beschreibung
Configuration

Die Formularkonfiguration liefert Standardvorlagen und Einstellungen.

Methoden

Name Beschreibung
AddRemainingFields(IEnumerable<String>)

Fügen Sie alle noch nicht hinzugefügten Felder zum Formular hinzu.

Build(Assembly, String)

Erstelle die Form basierend auf den vom Builder genannten Methoden.

Confirm(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>)

Generiere eine Bestätigung mit einem Delegierten, um die Nachricht dynamisch zu erstellen.

Confirm(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>)

Fügen Sie einen Bestätigungsschritt hinzu.

Confirm(String, ActiveDelegate<T>, IEnumerable<String>)

Fügen Sie einen Bestätigungsschritt hinzu.

Field(IField<T>)

Verfeinere einen Feldschritt, indem du deine eigene Felddefinition angibst.

Field(String, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Definieren Sie einen Schritt zum Ausfüllen eines bestimmten Wertes im Formularzustand.

Field(String, PromptAttribute, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Definieren Sie einen Schritt zum Ausfüllen eines bestimmten Wertes im Formularzustand.

Field(String, String, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Definieren Sie einen Schritt zum Ausfüllen eines bestimmten Wertes im Formularzustand.

HasField(String)

Teste nach, ob es bereits ein Feld mit gibt name.

Message(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>)

Generiere eine Nachricht mit einem Delegaten, um die Nachricht dynamisch zu erstellen.

Message(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>)

Zeigen Sie eine Nachricht mit mehr Formatkontrolle, die keine Antwort erfordert.

Message(String, ActiveDelegate<T>, IEnumerable<String>)

Zeigen Sie eine Nachricht, die keine Antwort erfordert.

OnCompletion(OnCompletionAsyncDelegate<T>)

Delegiere den Anruf, wenn das Formular ausgefüllt ist.

Prompter(PromptAsyncDelegate<T>)

Delegiere den Prompt an den Benutzer.

Gilt für: