SemanticResultKey.ToGrammarBuilder Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve una instancia de GrammarBuilder construida a partir de la instancia de SemanticResultKey actual.
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
Devoluciones
Instancia de GrammarBuilder construida a partir de la instancia de SemanticResultKey
actual.
Ejemplos
En el ejemplo siguiente se crea un Grammar objeto que admite comandos para cambiar el color de fondo.
Un Choices objeto (colorChoice
) que contiene la lista de opciones para los colores de fondo se rellena mediante el Add(GrammarBuilder[]) método con GrammarBuilder instancias de . Las GrammarBuilder instancias se obtienen mediante el ToGrammarBuilder() método en los SemanticResultValue objetos creados a partir de cadenas de color.
A GrammarBuilder continuación, se obtiene mediante una llamada a ToGrammarBuilder() en una SemanticResultKey instancia de , que se usará para claver las opciones semánticas en colorChoice
.
private Grammar CreateGrammarBuilderRGBSemantics()
{
// Create a set of choices, each a lookup from a color name to RGB.
// Choices constructors do not take SemanticResultValue parameters, so cast
// the SemanticResultValue to GrammarBuilder.
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
SemanticResultValue colorValue=new SemanticResultValue(colorName, Color.FromName(colorName).ToArgb());
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(colorValue.ToGrammarBuilder());
}
SemanticResultKey choiceKey = new SemanticResultKey("rgb", colorChoice);
GrammarBuilder choiceBuilder = choiceKey.ToGrammarBuilder();
// Create two intermediate grammars with 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 Grammar object, which recognizes either intermediate grammar.
Grammar grammar = new Grammar(new Choices(new GrammarBuilder[] {makeBackgroundBuilder, configureBackgroundBuilder}));
grammar.Name = "Make Background /Configure background as";
return grammar;
}
Comentarios
El uso de ToGrammarBuilder es equivalente al uso del GrammarBuilder constructor que toma SemanticResultKey como argumento (GrammarBuilder(SemanticResultKey)).