SemanticResultValue.ToGrammarBuilder Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna uma instância de GrammarBuilder construída com base na instância de SemanticResultValue atual.
public:
System::Speech::Recognition::GrammarBuilder ^ ToGrammarBuilder();
public System.Speech.Recognition.GrammarBuilder ToGrammarBuilder ();
member this.ToGrammarBuilder : unit -> System.Speech.Recognition.GrammarBuilder
Public Function ToGrammarBuilder () As GrammarBuilder
Retornos
Retorna uma instância de GrammarBuilder construída com base na instância de SemanticResultValue atual.
Exemplos
O exemplo a seguir cria Grammar objetos que dão suporte a comandos para alterar a cor do plano de fundo.
Um Choices objeto ( colorChoice
) que contém a lista de opções para cores de plano de fundo é preenchido usando o Add(GrammarBuilder[]) método com GrammarBuilder instâncias que são obtidas do ToGrammarBuilder() método nos SemanticResultValue
objetos criados a partir de cadeias de caracteres de cores.
R GrammarBuilder é então obtido chamando ToGrammarBuilder() em uma SemanticResultKey instância, que será usada para chavear as escolhas semânticas na colorChoice
instância.
private Grammar CreateGrammarBuilderRGBSemantics()
{
// Create a set of choices, each a lookup from a color name to RBG.
// Choices constructors do not take a SemanticResultValue parameter, so
// cast SemanticResultValue to GrammarBuilder.
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
SemanticResultValue colorValue =
new SemanticResultValue(colorName, Color.FromName(colorName).ToArgb());
colorChoice.Add(colorValue.ToGrammarBuilder());
}
SemanticResultKey choiceKey = new SemanticResultKey("rgb", colorChoice);
GrammarBuilder choiceBuilder = choiceKey.ToGrammarBuilder();
// Create two intermediate grammars with an introductory phrase and the
// color choice.
GrammarBuilder makeBackgroundBuilder = "Make background";
makeBackgroundBuilder.Append(choiceBuilder);
GrammarBuilder configureBackgroundBuilder = new GrammarBuilder("Configure background as");
configureBackgroundBuilder.Append((new SemanticResultKey("rgb", colorChoice)).ToGrammarBuilder());
// Create the final grammar, which recognizes either intermediate grammar.
Grammar grammar = new Grammar(new Choices(new GrammarBuilder[] { makeBackgroundBuilder, configureBackgroundBuilder }));
grammar.Name = "Set Background Color";
return grammar;
}
Comentários
O uso de ToGrammarBuilder é equivalente a usar o GrammarBuilder Construtor que usa um SemanticResultValue como argumento ( GrammarBuilder(SemanticResultValue) ).