ボタンの代わりにカルーセルを使用してPromptDialogを使用できるかどうかを知りたいです。私は選択肢をユーザーに促したい場合ボットフレームワークのボタンではなく、カルーセルでユーザにプロンプトを表示できますか?
は例えば、私はこのような何かを行うことができます:
public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable<IMessageActivity> result)
{
IEnumerable<string> options = new List<string>
{
"First Option",
"Second Option",
"Third Option",
"Fourth Option"
};
PromptDialog.Choice(context, AfterPromptDialogChoice, options, "Choose an option");
}
private async Task AfterPromptDialogChoice(IDialogContext context, IAwaitable<string> result)
{
string input = await result;
await context.PostAsync(input);
context.Wait(this.MessageReceivedAsync);
}
私のためにここで重要なのは、ユーザーがオプションを選択した後、私は内部の選択肢を扱うことができるということですAfterPromptDialogChoiceメソッド。私が望むのは、ユーザーにカルーセルを促すことです。カルーセルアイテムの1つを選択すると、そのフローをデリゲートメソッドにリダイレクトして、ユーザーの選択に基づいていくつかの操作を実行できます。
通常のカルーセルを使用すると、CardActionを使用してユーザーが選択したオプションを返すことができますが、このオプションの値(テキスト)はボットに再度送信され、ユーザーの選択には関係しません。私はちょうどPromptDialog.Choiceの動作をしたいと思いますが、オプションを表示するカルーセルで、ボタンだけではなく可能ですか?