使用 prompt.choice 显示所有选项

show all options using prompt.choice

我正在使用 PromptDialog.Choice 向用户显示选项。问题是:

我有 4 个选项,但只显示了其中的 3 个。如果用户想看到最后一个选项,必须使用滚动。我的机器人配置为 Messenger 频道。

我有这个:

           var dialog = new PromptDialog.PromptChoice<string>(options, "I can assist you with : ", "Sorry, that wans't a valid option", 2);
           context.Call(dialog, UserChose);

如何覆盖 PromptStyler 来完成这项工作?

我想在没有滚动的情况下创建提示时向用户显示所有选项。 这可能吗?

在 Ezequiel 的评论后编辑: 如果您使用 PromptStyle.Keyboard,您将自动获得正确的显示,因为框架现在支持快速回复样式:


初始答案:

如果您只使用 Facebook Messenger 频道,您可以使用 Ezequiel Jadib's Quick Replies implementation: https://github.com/ejadib/QuickReplies

它使用 Facebook 的 ChannelData 设置真正的快速回复,Facebook Messenger 以良好的外观和感觉显示:https://developers.facebook.com/docs/messenger-platform/send-api-reference/quick-replies

样本:

您可以在此博客上阅读更多信息 post:http://southworks.com/blog/2016/09/15/sending-facebooks-quick-replies-using-microsoft-bot-framework/