1

在更新用户输入以读取例如“我不想更改任何内容”时,有没有办法修改按钮的默认“无偏好”标签。不引入新的 Resources.*.resx 文件? 没有带有默认标签的首选项按钮

我尝试了所有允许更改此类文字的模板,但我发现没有人可以做到这一点。TemplateUsage.NoPreference 可用于仅更改可选字段的值,而不是按钮标签。

4

1 回答 1

1

您可以通过覆盖TemplateFormFlow 中的值来实现。

下面是一个基于 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();
}

演示捕获:

演示

于 2018-01-02T20:46:07.500 回答