Condividi tramite


SemanticResultKey.ToGrammarBuilder Metodo

Definizione

Restituisce un'istanza di GrammarBuilder costruita dall'istanza SemanticResultKey corrente.

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

Restituisce

GrammarBuilder

Istanza di GrammarBuilder costruita dall'istanza SemanticResultKey corrente.

Esempio

Nell'esempio seguente viene creato un Grammar oggetto che supporta i comandi per modificare il colore di sfondo.

Un Choices oggetto (colorChoice) contenente l'elenco di opzioni per i colori di sfondo viene riempito usando il Add(GrammarBuilder[]) metodo con GrammarBuilder le istanze. Le GrammarBuilder istanze vengono ottenute tramite il ToGrammarBuilder() metodo sugli SemanticResultValue oggetti creati da stringhe di colore.

Viene GrammarBuilder quindi ottenuto chiamando ToGrammarBuilder() in un'istanza SemanticResultKey , che verrà usata per chiavere le scelte semantiche in 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;  
}  

Commenti

L'uso di è equivalente all'uso del ToGrammarBuilder GrammarBuilder costruttore che accetta SemanticResultKey come argomento (GrammarBuilder(SemanticResultKey)).

Si applica a