我正在我的一个机器人项目中研究机器人框架的FormFlow功能。机器人需要从用户那里获得有关日期范围(From和To)的输入。表单流程有效,但机器人需要在字符串中输入DateTime。为了避免人为错误,我希望它是一个Date选择器(就像自适应卡中的那个),而不是来自用户的字符串输入。
我尝试明确设置字段类型但由于某种原因它不起作用。请参阅下面的代码。
[Serializable]
public class Leave
{
[Prompt("Select type of leave you want to apply.")]
public LeaveTypeEnum LeaveType;
[Prompt("Vacations from date")]
public DateTime? From;
[Prompt("To date")]
public DateTime? To;
public static IForm<Leave> BuildForm()
{
return new FormBuilder<Leave>().Message
("Fill in the form.")
.Field(new FieldReflector<Leave>(nameof(From)).SetType(typeof(DateTime)))
.Field(nameof(From))
.Field(nameof(To))
.Build();
}
}
我们可以显示datepicker吗?
答案 0 :(得分:0)
简短的回答是否定的,botframework中没有DatePicker组件。
您应该通过使用Microsoft的<svg>
GitHub项目来提供来自用户的文本的日期时间并处理多种格式:documentation
它用于解析多种类型的文本输入,Recognizers-Text
是提供的类型之一。它在https://github.com/Microsoft/Recognizers-Text个包中提供。