如何更改 FormFlow 中的默认按钮标签 "No Preference"
How to change the default button label "No Preference" in FormFlow
有没有办法在更新用户输入以阅读时修改按钮的默认 "No Preference" 标签,例如"I don't want to change anything." 不引入新的 Resources.*.resx 文件?
我尝试了所有允许更改此类文字的模板,但我发现没有一个可以实现这一点。 TemplateUsage.NoPreference 只能用于更改可选字段的值,不能更改按钮标签。
您可以通过覆盖 FormFlow 中的 Template
值来实现。
这是一个基于 Microsoft.Bot.Sample.SimpleSandwichBot 的示例:
public static IForm<SandwichOrder> BuildForm()
{
var formBuilder = new FormBuilder<SandwichOrder>()
.Message("Welcome to the simple sandwich order bot!");
var noPreferenceStrings = new string[] { "Nothing" };
// Set the new "no Preference" value
formBuilder.Configuration.Templates.Single(t => t.Usage == TemplateUsage.NoPreference).Patterns = noPreferenceStrings;
// Change this one to help detection of what you typed/selected
formBuilder.Configuration.NoPreference = noPreferenceStrings;
return formBuilder.Build();
}
演示捕获:
有没有办法在更新用户输入以阅读时修改按钮的默认 "No Preference" 标签,例如"I don't want to change anything." 不引入新的 Resources.*.resx 文件?
我尝试了所有允许更改此类文字的模板,但我发现没有一个可以实现这一点。 TemplateUsage.NoPreference 只能用于更改可选字段的值,不能更改按钮标签。
您可以通过覆盖 FormFlow 中的 Template
值来实现。
这是一个基于 Microsoft.Bot.Sample.SimpleSandwichBot 的示例:
public static IForm<SandwichOrder> BuildForm()
{
var formBuilder = new FormBuilder<SandwichOrder>()
.Message("Welcome to the simple sandwich order bot!");
var noPreferenceStrings = new string[] { "Nothing" };
// Set the new "no Preference" value
formBuilder.Configuration.Templates.Single(t => t.Usage == TemplateUsage.NoPreference).Patterns = noPreferenceStrings;
// Change this one to help detection of what you typed/selected
formBuilder.Configuration.NoPreference = noPreferenceStrings;
return formBuilder.Build();
}
演示捕获: