Language

IFormBuilder<T> インターフェイス

定義

フォーム作成のためのインターフェース。

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

型パラメーター

T

フォーム・ステート。

派生

注釈

フォームは、以下のいずれかである一連のステップから成り立っています。

デフォルトでは、 Message(String, ActiveDelegate<T>, IEnumerable<String>)、 Field(IField<T>) 、 Confirm(String, ActiveDelegate<T>, IEnumerable<String>) コールの順にステップが実行されます。 明示的な制御を取らない場合は、フォーム状態で定義された順序でステップが実行され、最終的な確認が行われます。 このインターフェースでは、フィールド、メッセージ、確認を組み合わせてフォームを自由に作成できます。 Fluentの構成要素は、フィールドが状態クラスに基づいているなど一般的なパターンを提供しますが、Advanced.IFieldを使って自分で形の定義を作ることもできます。 状態クラス上でC#リフレクションを使ってフォームを作成したい場合は、FormBuilderを使ってください。 JSON Schemaで宣言的にフォームを作成するには、Json.FormBuilderJsonを使えます。

フォームは現在のスレッドUI文化に敏感です。 Microsoft。Bot.Builderの文字列は利用可能な場合、その文化にローカライズされます。 また、IForm.SaveResourcesを呼び出したり、RViewツールを使ってそのリソースをプロジェクトに追加することで、フォームで生成された文字列をローカライズすることもできます。 動的フィールド、メッセージ、確認の文字列の場合は、通常のC#のメカニズムを使ってローカライズする必要があります。 詳細は概要ドキュメントをご覧ください。

プロパティ

名前 説明
Configuration

フォーム構成はデフォルトのテンプレートと設定を提供します。

メソッド

名前 説明
AddRemainingFields(IEnumerable<String>)

フォームにまだ追加されていないすべてのフィールドを追加してください。

Build(Assembly, String)

ビルダーに指示された方法に基づいてフォームを作成します。

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

デリジェンを使って確認を生成し、メッセージを動的に構築します。

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

確認のステップを追加してください。

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

確認のステップを追加してください。

Field(IField<T>)

自分のフィールド定義を提供してフィールドステップを微調整しましょう。

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

フォームステートで特定の値を入力するステップを定義します。

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

フォームステートで特定の値を入力するステップを定義します。

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

フォームステートで特定の値を入力するステップを定義します。

HasField(String)

すでに nameのあるフィールドがあるかどうかをテストしてください。

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

デリゲートを使ってメッセージを動的に生成します。

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

返信を必要としない、よりフォーマットのコントロールが可能なメッセージを表示しましょう。

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

返信を必要としないメッセージを見せてください。

OnCompletion(OnCompletionAsyncDelegate<T>)

フォームが記入したら、委任状で電話をかけてください。

Prompter(PromptAsyncDelegate<T>)

プロンプトをユーザーに送信する権限を委ねます。

適用対象